2012-04-07 3 views
0

я уверен, выполнение следующих регулярных выраженийкак изменить это регулярное выражение для preg_match()

$patt="(BEGIN:|END:)[[:blank:]]*([0-9a-zA-Z\_]+)[[:blank:]]*-->(.*)" 
if (preg_match($patt,$v,$res)) 

и это дает следующее сообщение об ошибке

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

он прекрасно работает с

if (eregi($patt,$v,$res)) 

ответ

0

Вы необходимо добавить разделители регулярных выражений, например, например:

if (preg_match('#'.$patt.'#',$v,$res))

+0

сейчас, ошибка исчезла, но полная целая страница – mack

0

preg_* семейство функций требует, чтобы написать картину, как /pattern/, где / может быть какой-либо другой «не алфавитно-цифровой, не обратный слэш, непробельным» характер, такие как #pattern# или !pattern!.

http://us.php.net/manual/en/regexp.reference.delimiters.php

Смежные вопросы