欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP正则的Unknown Modifier错误解决方法

程序员文章站 2022-10-06 16:34:55
如下正则: $a='2tóngdòng&...

如下正则:

$a='2<span><nobr>tóng<span class="h">dòng</span></nobr><br>垌</span>3';
echo preg_replace('/<span class="h">[^<]*?</span>/','',$a);

会提示:

warning: preg_replace(): unknown modifier 'p' in e:\phplearn\test.php on line 12

原因是:

在正则模式中,用/做定界符,但正则中也含有/,因此会出现此错误,php误当后面的一个</span>中的斜杠是结束的定界符。

解决办法:

1、加一个转义符:

echo preg_replace('/<span class="h">[^<]*?<\/span>/','',$a);

2、改其它定界符:如

echo preg_replace('{<span class="h">[^<]*?</span>}','',$a);