正则表达式语法

========================原子==================================
\d  表示一个十进制数字
\D  表示一个非十进制数字
\s  表示一个空白字符[\n\t\r\f]
\S  表示一个非空白字符
\w  表示一个数字、英文或者下划线字符[a-zA-Z0-9_]
\W  表示一个非数字、英文或者下划线字符[^a-zA-Z0-9_]
[]  表示一个自定义原子
.   表示一个除换行符外的任意字符

========================元字符================================
{}  表示前一个原子出现的次数,{2,3}表示出现2~3次
*   表示前一个原子可以出现0次或以上
+   表示前一个原子可以出现1次或以上
?  表示前一个原子可以出现0次或1次
^   表示必须以这个表达式开始/或者表示非
$   表示必须以这个表达式结束
|   表示逻辑或
\b  表示边界
\B  表示非边界
?:  取消子模式
\1  表示取第一个子模式
${1}表示区第一个子模式
()  表示:
    1.大原子
    2.优先级
    3.子模式
    4.反向引用(用匹配的子模式结果\1再次匹配)

========================模式修正符============================
i   表示模式匹配不区分大小写
m   表示将字符串视为多行
s   此模式下"."可以表示换行符号,将字符串视为单行,将\n视为普通字符
x   表示模式空白可以忽略不计
e   表示在使用preg_replace替换字符串的函数中才能使用
A   表示必须以这个表达式开始
Z   表示必须以这个表达式结束
U   取消贪婪模式但是和.*?使用会变为贪婪模式
.*? 取消贪婪模式但是和U使用会变为贪婪模式

 

posted @ 2015-07-30 09:51  boystar  阅读(141)  评论(0编辑  收藏  举报