Rumah  >  Artikel  >  pembangunan bahagian belakang  >  浅析PHP正则表达式函数库_PHP教程

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

WBOY
WBOYasal
2016-07-15 13:26:33988semak imbas

浅析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匹配,我们要注意,在条件子模式以及其它许多...
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn