正则表达式难度

时间:2014-10-17 00:50:32

标签: php regex

第一个preg_match是第32行。我想第二个preg_match会给出同样的错误。 我该如何解决?感谢。

Warning: preg_match(): No ending delimiter '^' found in 
C:\xampp\htdocs\(...)\index.php on line 32



if (preg_match('^(?=.{4,20}$)(?![_.])(?!.*[_.]{2})[a-zA-Z0-9._]+(?<![_.])$', 
$userCreation)) {
    if(preg_match('^([1-zA-Z0-1@.\s]{4,30})$', $passwordCreation)) {

1 个答案:

答案 0 :(得分:1)

在正则表达式的开头和结尾使用分隔符(/):

if (preg_match('/^(?=.{4,20}$)(?![_.])(?!.*[_.]{2})[a-zA-Z0-9._]+(?<![_.])$/', 
$userCreation)) {
    if(preg_match('/^([1-zA-Z0-1@.\s]{4,30})$/', $passwordCreation)) {