我有这个正则表达式:
([http://some.url.com/index.php?showtopic=\"]*)([0-9]+(?:\.[0-9]*)?)
它用于从论坛中提取主题的链接
现在当我在我的脚本中使用它时
$url = "([http://some.url.com/index.php?showtopic=\"]*)([0-9]+(?:\.[0-9]*)?)";
preg_match_all吐:"未知的修饰符'('"
这也是对preg_match的调用
preg_match_all($url, $str, $matches,PREG_OFFSET_CAPTURE,3);
任何人都可以帮我解决这个明显愚蠢的问题
您需要将正则表达式包装在分隔符中.任何不是特殊PCRE元字符的字符都可以,所以我将使用#:
$url = "#([http://some.url.com/index.php?showtopic=\"]*)([0-9]+(?:\.[0-9]*)?)#";
您可以在PHP手册部分中了解有关PCRE分隔符的更多有关分隔符的信息.