AI编程助手
AI免费问答

浅析PHP正则表达式函数库

  2016-06-13 11:03   1447浏览 原创

浅析php正则表达式函数库是什么呢?这里向你介绍了php正则表达式函数库(posix 扩展)greedy匹配,我们要注意,在条件子模式以及其它许多 posix 扩展正则表达式语法中那些所不被不支持的特性。

PHP正则表达式函数库学习中的警告:

本类正则表达式并不能安全用于二进制模式。PCRE 函数库则可以。正则表达式在 PHP 中用来做复杂的字符串操作。支持正则表达式的函数为:

◆ereg()

◆ereg_replace()

◆eregi()

◆eregi_replace()

◆split()

◆spliti()

这些函数都接受一个正则表达式字符串作为其第一个参数。PHP 使用由 POSIX 1003.3 定义的 POSIX 扩展正则表达式。POSIX 正则表达式完整的描述见包含在 PHP 发行包中 regex 目录下的 man 页面。可以通过类似 man /usr/local/src/regex/regex.7 的命令来阅读。

需求:无需外部库文件就可以加入本扩展模块的支持。

安装警告:除非知道自己在做什么,否则不要改变 TYPE。

要激活 regexp 的支持在配置 PHP 时加上 --with-regex[=TYPE]。TYPE 可以是 system,apache 或 php 之一。默认使用 php。

PHP的Windows 版本已经内置该扩展模块的支持。您无需加载任何附加的扩展库即可使用这些函数。我们来看看具体的相关操作:

◆运行时配置:该扩展模块未定义任何设置指令。

◆资源类型:该扩展模块未定义任何资源类型。

◆预定义常量:该扩展模块未定义任何常量。

PHP正则表达式函数的实例:

<OL class=dp-c><LI class=alt><SPAN><SPAN><?php  </SPAN></SPAN><LI><SPAN class=comment>// 如果在 $string 中任何地方找到 "abc" 则返回 &true; </SPAN><SPAN> </SPAN><LI class=alt><SPAN class=func>ereg</SPAN><SPAN> (</SPAN><SPAN class=string>"abc"</SPAN><SPAN>, </SPAN><SPAN class=vars>$string</SPAN><SPAN>);  </SPAN><LI><SPAN> </SPAN><LI class=alt><SPAN class=comment>// 如果 $string 以 "abc" 开头则返回 &true; </SPAN><SPAN> </SPAN><LI><SPAN class=func>ereg</SPAN><SPAN> (</SPAN><SPAN class=string>"^abc"</SPAN><SPAN>, </SPAN><SPAN class=vars>$string</SPAN><SPAN>);  </SPAN><LI class=alt><SPAN> </SPAN><LI><SPAN class=comment>// 如果 $string 以 "abc" 结尾则返回 &true; </SPAN><SPAN> </SPAN><LI class=alt><SPAN class=func>ereg</SPAN><SPAN> (</SPAN><SPAN class=string>"abc$"</SPAN><SPAN>, </SPAN><SPAN class=vars>$string</SPAN><SPAN>);  </SPAN><LI><SPAN> </SPAN><LI class=alt><SPAN class=comment>// 如果用户浏览器是 Netscape 2,3 或 MSIE 3 则返回 &true; </SPAN><SPAN> </SPAN><LI><SPAN class=func>eregi</SPAN><SPAN> (</SPAN><SPAN class=string>"(ozilla.[23]|MSIE.3)"</SPAN><SPAN>, </SPAN><SPAN class=vars>$HTTP_USER_AGENT</SPAN><SPAN>);  </SPAN><LI class=alt><SPAN> </SPAN><LI><SPAN class=comment>// 将三个空格分隔的单词放入 $regs[1],$regs[2] 和 $regs[3] 中 </SPAN><SPAN> </SPAN><LI class=alt><SPAN class=func>ereg</SPAN><SPAN> ("([[:alnum:]]+) ([[:alnum:]]+)  </SPAN><LI><SPAN> ([[:alnum:]]+)", </SPAN><SPAN class=vars>$string</SPAN><SPAN>,</SPAN><SPAN class=vars>$regs</SPAN><SPAN>);  </SPAN><LI class=alt><SPAN> </SPAN><LI><SPAN class=comment>// 将 <br /> 标记放到 $string 开头 </SPAN><SPAN> </SPAN><LI class=alt><SPAN class=vars>$string</SPAN><SPAN> = </SPAN><SPAN class=func>ereg_replace</SPAN><SPAN> (</SPAN><SPAN class=string>"^"</SPAN><SPAN>, </SPAN><SPAN class=string>"<br />"</SPAN><SPAN>, </SPAN><SPAN class=vars>$string</SPAN><SPAN>);  </SPAN><LI><SPAN> </SPAN><LI class=alt><SPAN class=comment>// 将 <br /> 标记放到 $string 结尾 </SPAN><SPAN> </SPAN><LI><SPAN class=vars>$string</SPAN><SPAN> = </SPAN><SPAN class=func>ereg_replace</SPAN><SPAN> (</SPAN><SPAN class=string>"$"</SPAN><SPAN>, </SPAN><SPAN class=string>"<br />"</SPAN><SPAN>, </SPAN><SPAN class=vars>$string</SPAN><SPAN>);  </SPAN><LI class=alt><SPAN> </SPAN><LI><SPAN class=comment>// 删除 $string 中的所有换行符 </SPAN><SPAN> </SPAN><LI class=alt><SPAN class=vars>$string</SPAN><SPAN> = </SPAN><SPAN class=func>ereg_replace</SPAN><SPAN> (</SPAN><SPAN class=string>"n"</SPAN><SPAN>, </SPAN><SPAN class=string>""</SPAN><SPAN>, </SPAN><SPAN class=vars>$string</SPAN><SPAN>);  </SPAN><LI><SPAN>?>   </SPAN></LI></OL>

PHP正则表达式函数相关的介绍就向你介绍到这里,希望对你了解和学习PHP正则表达式函数有所帮助。


php免费学习视频:立即学习
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。