preg_match 错误未知修饰符 '('

ped*_*lpr 2 php regex preg-match

这有什么问题吗?

\n\n
public static function validaDataHoraBR($data_hora){\n  $pattern = "/^([1-9]|0[1-9]|[1,2][0-9]|3[0,1])/([1-9]|1[0,1,2])/\\d{4} ([0-1][0-9]|[2][0-3])(:([0-5][0-9])){1,2}(:([0-5][0-9])){1,2}$/";\n  return (preg_match($pattern, $data_hora)) ? array(true) : array(false,\' n\xc3\xa3o \xc3\xa9 uma data e hora no formato BR!<br>\'); \n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

此模式验证了这一点 - 20/08/2011 21:00:00

\n\n

错误:消息:preg_match() [function.preg-match]:未知修饰符 \'(\'

\n

fal*_*tru 5

/正则表达式中的转义。

"/^([1-9]|0[1-9]|[1,2][0-9]|3[0,1])\/([1-9]|1[0,1,2])\/\d{4} ([0-1][0-9]|[2][0-3])(:([0-5][0-9])){1,2}(:([0-5][0-9])){1,2}$/"
#                                   ^                 ^
Run Code Online (Sandbox Code Playgroud)

否则,/被识别为正则表达式的结尾。

或者使用不同的分隔符:

"#^([1-9]|0[1-9]|[1,2][0-9]|3[0,1])/([1-9]|1[0,1,2])/\d{4} ([0-1][0-9]|[2][0-3])(:([0-5][0-9])){1,2}(:([0-5][0-9])){1,2}$#"
Run Code Online (Sandbox Code Playgroud)