2014-12-05 76 views
0

我正在使用XRegExp正则表达式。我想在我的角色之间有一个空格,我还需要有特殊字符启用。我已设法添加特殊字符,但我无法获得允许的空间。XRegExp正则表达式允许字符间单个空格

我正则表达式unicodeWord = XRegExp("^(\\p{L}|[0-9][\s])+$");

它可以让人物像

欢迎

但不

欢迎喜

//Alphanumeric validation 
function isAlphanumeric(str) { 
    var unicodeWord = XRegExp("^[\p{L}\d]+(?:\s+[\p{L}\d]+)*$"); 
    result = unicodeWord.test(str); 
    return result; 
} 


été altérée sûr générateurs 

但是这个dosnt匹配这个字母数字。

+0

再次转义反斜杠。 – 2014-12-17 13:21:30

+0

@Avinash我可以知道在哪个位置 – TomPHP 2014-12-17 13:23:44

+1

'XRegExp(“^ [\\ p {L} \\ d] +(?:\\ s + [\\ p {L} \\ d] +)* $”) ;' – 2014-12-17 13:24:24

回答

1

你需要改变你的正则表达式一样,

unicodeWord = XRegExp("^[\\p{L}\\d]+(?:\\s[\\p{L}\\d]+)*$"); 
  • [\\p{L}\\d]+匹配一个或多个字母或数字。 (后跟一个或多个字母或数字空间)
(?:\\s[\\p{L}\\d]+)?

OR

unicodeWord = XRegExp("^[\\p{L}\\d]+(?:\\s[\\p{L}\\d]+)?$"); 

?

  • (?:\\s[\\p{L}\\d]+)*后跟零个或更多的会变成以前的令牌(?:\\s[\\p{L}\\d]+)可选。

  • +0

    谢谢你,它完美的工作.. – TomPHP 2014-12-05 07:23:19

    +0

    我怎样才能允许两个空间? – TomPHP 2014-12-15 05:40:11

    +1

    中间的一个或多个空格''^ [\\ p {L} \\ d] +(?:\\ s + [\\ p {L} \\ d] +)* $“'。对于2个空格''^ [\\ p {L} \\ d] +(?:\\ s {2} [\\ p {L} \\ d] +)* $“' – 2014-12-15 05:45:05

    相关问题