Php 警告:preg_replace():未知修饰符“g”
我发现这个正则表达式有一个错误Php 警告:preg_replace():未知修饰符“g”,php,regex,Php,Regex,我发现这个正则表达式有一个错误 $strTmp = preg_replace('~(<\/CharacterStyleRange>(.*?)\n*</CharacterStyleRange>)~gim ' , "</CharacterStyleRange>", $strTmp); 错误 警告:preg_replace:中的未知修饰符“g” 为什么?g在preg\u replace中是隐式的。您不需要包含它。您不必指定全局标志。从中,有一个单独的参数$limi
$strTmp = preg_replace('~(<\/CharacterStyleRange>(.*?)\n*</CharacterStyleRange>)~gim ' , "</CharacterStyleRange>", $strTmp);
错误
警告:preg_replace:中的未知修饰符“g”
为什么?g在preg\u replace中是隐式的。您不需要包含它。您不必指定全局标志。从中,有一个单独的参数$limit用于指定要进行的替换的数量: 极限 每个主题字符串中每个模式的最大可能替换。默认值为-1,没有限制 因此,除非为此参数指定正数,否则默认情况下,它将替换所有引用:
$strTmp = preg_replace('~(<\/CharacterStyleRange>(.*?)\n*</CharacterStyleRange>)~im ' , "</CharacterStyleRange>", $strTmp);
在您要替换的字符串中,字母G前面有a/。这刚刚为我抛出了一个错误Glasshouse Images/Getty Images我猜是preg_uu将其视为转义字符