CakePHP,用户名正则表达式

时间:2012-01-31 15:59:41

标签: regex cakephp

我现在正在尝试使用正则表达式,但它并没有按我想要的那样做。

这是用户名正则表达式验证:

var $validate = array(
            'nom' => array(
                'regex_nom' => array(
                    'rule'      => '/^[A-Za-zÉÈÊËÜÛÎÔÄÏÖÄÇéèëêüûçîôâïöäa]+$/',
                    'message'   => 'Nom incorrect.'
                )
            )
        );

嗯,我认为不需要解释我想要的东西,但问题是,当我进入时,例如:Tesédsf它不匹配,我不知道为什么......

3 个答案:

答案 0 :(得分:2)

您需要/u修饰符来匹配UTF-8字符串。此外,Unicode属性似乎有效,因此您可以编写

'rule'      => '/^\p{Alpha}+$/u',

答案 1 :(得分:2)

试试这个正则表达式/^\p{L}+$/u。它以UTF-8字符串检查每种语言的单词。

答案 2 :(得分:0)

可能是编码问题。尝试:

'rule' => '/^\p{L&}+$/'