我在这里看到过类似的问题,但我认为他们中的任何一个都没有帮助。
我从使用旧版PHP的用户继承了一个网站,特别是ereg功能。他们原来的reg ex是:
$regex = "[ ]+[0-9]+) ( [a-zA-Z]+)[ ]+Crimson[ ]+([0-9]+)[ ]+[0-9]+[ ]+[0-9]+[ ]+[0-9]+[ ]+([0-9]+)[ ]+[0-9]+";
我已经读过你需要以分隔符开头和结尾,所以我把它更新为:
$regex = "/[ ]+[0-9]+) ( [a-zA-Z]+)[ ]+Crimson[ ]+([0-9]+)[ ]+[0-9]+[ ]+[0-9]+[ ]+[0-9]+[ ]+([0-9]+)[ ]+[0-9]+/";
但我仍然收到此错误:
警告:preg_match():编译失败:无法匹配的括号 抵消10
我没有在表达式中看到任何特殊字符,所以我不确定我还需要逃避什么。有什么想法吗?
答案 0 :(得分:2)
你的正则表达式开头附近有)
,但你没有打开它。如果它是文字的,请在它之前添加反斜杠。
/[ ]+[0-9]+)
到
/[ ]+[0-9]+\)
如果没有,请先打开它。
答案 1 :(得分:1)
在第10位你有一个关闭),没有开口(