当前位置:Gxlcms > PHP教程 > 请问一个preg_replace的奇怪有关问题

请问一个preg_replace的奇怪有关问题

时间:2021-07-01 10:21:17 帮助过:15人阅读

请教一个preg_replace的奇怪问题。
我需要在一个html文档中将 < br />这样的标签,替换成

,用的语句是这样的:

$demo = "abc
def" ;
$demo = preg_replace('< *br */ *>', '

', $demo);

最后demo结果为 "abc <

> def"

怎么多出一对尖括号了呢?

但是同样的方法,使用ereg_replace就正常了:
$demo = "abc
def" ;
$demo = ereg_replace('< *br */ *>', '

', $demo);
demo输出:"abc

def"

听说php以后会淘汰掉ereg_replace,但是我这个功能preg_replace老是莫名其妙在外边多出一对尖括号,我好郁闷呀!

为什么呀?

------解决方案--------------------
$demo = preg_replace('#< *br */ *>#', '

', $demo);


你的 '< *br */ *>', '

' 是将<>作为定界符用的

人气教程排行