Heim >Backend-Entwicklung >PHP-Tutorial >浅析PHP正则表达式函数库_PHP教程

浅析PHP正则表达式函数库_PHP教程

WBOY
WBOYOriginal
2016-07-15 13:26:331036Durchsuche

浅析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>
<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>
<li><span> </span></li>
<li class="alt">
<span class="comment">// 如果 $string 以 "abc" 开头则返回 &true; </span><span> </span>
</li>
<li>
<span class="func">ereg</span><span> (</span><span class="string">"^abc"</span><span>, </span><span class="vars">$string</span><span>);  </span>
</li>
<li class="alt"><span> </span></li>
<li>
<span class="comment">// 如果 $string 以 "abc" 结尾则返回 &true; </span><span> </span>
</li>
<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>
<li><span> </span></li>
<li class="alt">
<span class="comment">// 如果用户浏览器是 Netscape 2,3 或 MSIE 3 则返回 &true; </span><span> </span>
</li>
<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>
<li class="alt"><span> </span></li>
<li>
<span class="comment">// 将三个空格分隔的单词放入 $regs[1],$regs[2] 和 $regs[3] 中 </span><span> </span>
</li>
<li class="alt">
<span class="func">ereg</span><span> ("([[:alnum:]]+) ([[:alnum:]]+)  </span>
</li>
<li>
<span> ([[:alnum:]]+)", </span><span class="vars">$string</span><span>,</span><span class="vars">$regs</span><span>);  </span>
</li>
<li class="alt"><span> </span></li>
<li>
<span class="comment">// 将 <br> 标记放到 $string 开头 </span><span> </span>
</li>
<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>
<li><span> </span></li>
<li class="alt">
<span class="comment">// 将 <br> 标记放到 $string 结尾 </span><span> </span>
</li>
<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>
<li class="alt"><span> </span></li>
<li>
<span class="comment">// 删除 $string 中的所有换行符 </span><span> </span>
</li>
<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>
<li><span>?>   </span></li></span></li></ol>

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


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446591.htmlTechArticle浅析PHP正则表达式函数库是什么呢?这里向你介绍了PHP正则表达式函数库(POSIX 扩展)greedy匹配,我们要注意,在条件子模式以及其它许多...
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn