preg_match_all: Warning: preg_match_all(): Unknown

2019-03-03 17:40发布

问题:

Possible Duplicate:
preg_match() Unknown modifier '[' help

I am trying to match this pattern

 $regex_pattern = '<td id="(\w+)" class="(\w+)">(\w+).com<\/td>';
 preg_match_all($regex_pattern, $result, $matches);
 print_r($matches);

But I am getting this error: Warning: preg_match_all(): Unknown modifier '(' in

What's wrong in my regex pattern?

回答1:

Add delimiters to your pattern

When using the PCRE functions, it is required that the pattern is enclosed by delimiters. A delimiter can be any non-alphanumeric, non-backslash, non-whitespace character.

Often used delimiters are forward slashes (/), hash signs (#) and tildes (~).

 $regex_pattern = '/<td id="(\w+)" class="(\w+)">(\w+).com<\/td>/';
 preg_match_all($regex_pattern, $result, $matches);
 print_r($matches);