Maison >développement back-end >tutoriel php >解读PHP正则表达式多行匹配的相关代码示例_PHP教程

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

WBOY
WBOYoriginal
2016-07-15 13:31:01967parcourir

在的学习中,很多问题都需要我们在实践中不断的解决。我们在进行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下的正则表式函数,很难进...
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn