Drupal的Views是一个强大的工具,其中的FILTER CRITERIA用于设置过滤条件。最近在创建一个中文成语英文解释词典的时候,原始数据包含了英文和中文字词,但我们在列表的时候只希望出现4字以上中文成语,就需要设置过滤条件,用正则表达式更方便来设置条件,我们试了一阵子,最后这样设置:
过滤条件设置了两条:
- 长度大于11个字节(1个汉字3个字节,4个汉字12个字节,此条件设置为大于11个字节);
- 首字符不是26个字母(正则表达式采用MySQL支持的正则表达式格式,排查26个大小写字母开头就是汉字了,第一个^表示开头,第二个^表示反向)。
这样就可以得到我们需要的结果。如果还有更复杂的需求,有时Views还满足不了,就需要用SQL语句来查了,参考我另外一篇博文《Drupal网站Views无法实现的查询用SQL语句完成》。
评论