Heim >Backend-Entwicklung >PHP-Tutorial >解读PHP正则表达式多行匹配的相关代码示例_PHP教程

解读PHP正则表达式多行匹配的相关代码示例_PHP教程

WBOY
WBOYOriginal
2016-07-15 13:31:01958Durchsuche

在的学习中,很多问题都需要我们在实践中不断的解决。我们在进行PHP正则表达式的匹配的时候,仅仅使用POSIX下的正则表式函数,很难进行复杂的匹配操作,那么该如何实现PHP正则表达式多行匹配呢。

例如,对整个文件(尤其是多行文本)进行匹配查找。使用ereg()对此进行操作的一个方法是分行处理。代码6.5的示例演示了ereg()如何将INI文件的参数赋值到数组之中。

代码6.5 文件内容的PHP正则表达式多行匹配

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span> ?php  </span></span></span></li>
<li>
<span>$</span><span class="attribute">rows</span><span> = </span><span class="attribute-value">file</span><span>('php.ini'); //将php.ini文件读到数组中  </span>
</li>
<li class="alt"><span>//循环遍历  </span></li>
<li><span>foreach($rows as $line)  </span></li>
<li class="alt"><span>{  </span></li>
<li><span>If(trim($line))  </span></li>
<li class="alt"><span>{  </span></li>
<li><span>//将匹配成功的参数写入数组中  </span></li>
<li class="alt"><span>if(eregi("^([a-z0-9_.]*) *=(.*)", $line, $matches))  </span></li>
<li><span>{  </span></li>
<li class="alt"><span>$options[$matches[1]] = trim($matches[2]);  </span></li>
<li><span>}  </span></li>
<li class="alt"><span>unset($matches);  </span></li>
<li><span>}  </span></li>
<li class="alt"><span>}  </span></li>
<li><span>//输出参数结果  </span></li>
<li class="alt"><span>print_r($options);  </span></li>
<li>
<span class="tag">?></span><span> </span>
</li>
</ol>

以上代码示例就是PHP正则表达式多行匹配的具体实现方法,希望大家看后能有所体会。


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446248.htmlTechArticle在的学习中,很多问题都需要我们在实践中不断的解决。我们在进行PHP正则表达式的匹配的时候,仅仅使用POSIX下的正则表式函数,很难进...
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