2013-11-09 75 views
0

我有一个问题,以逃避preg_match函数中的单引号。preg_match不能用单引号

我要让符合各种名目的,奥尼尔等,也喜欢

if(preg_match("/^(\w){1,12}\s(\w){2,15}\D$/", stripslashes($name))) 
    { 
     $name = $db->real_escape_string(stripslashes($_POST['name'])); 
    } 
    else 
    { 
     $errors[] = 'Name format should be: first name + second name(i.e. John Smith)  
    </br>'; 
    }  

我已经试过绝对一切,也看了一下,从董事会,没有什么不同的实例函数帮助;我试过了:

(\w'-) 
(A-Za-z'-) 
(A-Za-z\'\) 

理想情况下,该函数应该允许第一个+第二个名称(不允许任何整数)的组合。

问候 亚切克

回答

0

范围以表示[],不()

你的建议的

要么会用正确的括号工作:

[\w'-] 
[A-Za-z'-]