PHP有两种使用不同的方式来使用html' target='_blank'>正则表达式:PCRE(Perl兼容表示法,preg_*)函数 和 POSIX(POSIX 扩展表示法,ereg_*) 函数。幸运的是,POSIX 家族函数从 PHP 5.3.0 开始就被弃用了。
经常使用的分隔符是正斜线(/)、hash符号(#) 以及取反符号(~)。下面的例子都是使用合法分隔符的模式
/foo bar/#^[^0-9]$#+php+%[a-zA-Z0-9_-]%{this is a pattern}
可以在结束分隔符后面增加模式修饰符
一些字符被赋予 特殊的涵义,使其不再单纯的代表自己,模式中的这种有特殊涵义的编码字符 称为 元字符。
元字符 | 描述 |
---|---|
模式中方括号内的部分称为“字符类”。 在一个字符类中仅有以下可用元字符
元字符 | 描述 |
---|---|
方括号中的内容就是字符类
有一些预定义字符类
字符类 | 描述 |
---|---|
如abc
如
量词 | |
---|---|
简单的断言代码有、B、 A、 Z、z、 ^、$
从当前位置向前测试
(?=) (?!)
w+(?=;)匹配一个单词紧跟着一个分号但是匹配结果不会包含分号
从当前位置向后测试
(?<=) (?<!)
(?<!foo)bar 用于查找任何前面不是 ”foo” 的 ”bar”
模式修饰符 | |
---|---|
preg_filter — 执行一个正则表达式搜索和替换preg_grep — 返回匹配模式的数组条目preg_last_error — 返回最后一个PCRE正则执行产生的错误代码preg_match_all — 执行一个全局正则表达式匹配preg_match — 执行一个正则表达式匹配preg_quote — 转义正则表达式字符preg_replace_callback_array — Perform a regular expression search and replace using callbackspreg_replace_callback — 执行一个正则表达式搜索并且使用一个回调进行替换preg_replace — 执行一个正则表达式的搜索和替换preg_split — 通过一个正则表达式分隔字符串
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
新闻热点
疑难解答