正则表达式匹配p标签并在其中添加br

时间:2009-12-06 13:17:58

标签: php html regex

问题标题解释了这个问题:D但这里只是一个例子

asdf
asdf
<p>asdf
asdf
asdf</p>

如何让它在p标签的内部正则表达式并将nl2br应用于它,因此输出将为:

asdf
asdf
<p>asdf<br />
asdf<br />
asdf</p>

编辑:在PHP中

1 个答案:

答案 0 :(得分:3)

使用Simple HTML DOM而不是正则表达式

$html = str_get_html(...);

foreach($html->find('p') as $element){
    //get html in p
    $ihtml = p->innertext;

    //apply function
    $ihtml = nl2br($ihtml);

    //save
    $p->innertext = $ihtml;
}

//print the new output
echo $html;