PHP正则表达式中的未知修饰符—管道[重复]

时间:2023-02-08 21:47:14

Possible Duplicate:
Warning: preg_match() [function.preg-match]: Unknown modifier ‘(’

可能重复:警告:preg_match()[函数。preg-match]:未知修饰符”(“

I have this regular expression, which works fine on this rerular Expression tester:

我有这个正则表达式,它在这个重新运行的表达式测试器上工作得很好:

$validLinksRegex = '(^http://.+?\.a.com)|(^http://b.com)';

This is followed by

这是紧随其后的是

if (preg_match($validLinksRegex, $link)){...

which generates the error

而产生的误差

preg_match() [function.preg-match]: Unknown modifier '|'

preg_match()函数。preg-match]:未知修饰符“|”

What am I doing wrong here?

我在这里做错了什么?

1 个解决方案

#1


3  

Put an extra set of brackets around the whole regex.

在整个正则表达式中添加一个额外的括号。

$validLinksRegex = ((^http://.+?\.a.com)|(^http://b.com));

#1


3  

Put an extra set of brackets around the whole regex.

在整个正则表达式中添加一个额外的括号。

$validLinksRegex = ((^http://.+?\.a.com)|(^http://b.com));