目前,我使用以下代码使用自定义函数{|
修改|}
和parse_table
之间的内容
$output = preg_replace_callback("({\|(.*?)\|})is", function($m) {return parse_table($m[1]);}, $input);
现在我想修改它,使模式可以排除某个子字符串,例如abcde
。可以做些什么来实现这个目标?
非常感谢。
答案 0 :(得分:0)
你可以把它放在你的正则表达式中:
"({\|(?!abcde)(.*?)\|})is"
然而,这将非常难以阅读,非常快。相反,请使用回调:
function($m) {
if( $m[1] == "abcde") return $m[0];
return parse_table($m[1]);
}