常用正则表达式实例

php判断中文是否有中文汉字

$pattern="/[\x{4e00}-\x{9fa5}]+/u";//此方法根据unicode的范围,必须用u模式
$pattern="/[".chr(0xa1)."-".chr(0xff)."]+/";//此方法是更具汉字的ascii码的范围

 正则表达式的常用模式,

u,此修正符打开一个与 perl 不兼容的附加功能;

i,如果设置了这个修饰符,模式中的字母会进行大小写不敏感匹配;

m,默认情况下,PCRE 认为目标字符串是由单行字符组成的(然而实际上它可能会包含多行), "行首"元字符 (^) 仅匹配字符串的开始位置, 而"行末"元字符 ($) 仅匹配字符串末尾, 或者最后的换行符(除非设置了 D 修饰符)。这个行为和 perl 相同。 当这个修饰符设置之后,“行首”和“行末”就会匹配目标字符串中任意换行符之前或之后,另外, 还分别匹配目标字符串的最开始和最末尾位置。这等同于 perl 的 /m 修饰符。如果目标字符串 中没有 "\n" 字符,或者模式中没有出现 ^ 或 $,设置这个修饰符不产生任何影响。

其他模式详见这里:http://www.php.net/manual/zh/reference.pcre.pattern.modifiers.php

 

 

 

 

posted @ 2013-03-26 18:36  qingq  阅读(176)  评论(0编辑  收藏  举报