正则表达式匹配空格和重音字符

时间:2016-08-11 14:01:40

标签: jquery regex validation

我想验证名称字符串。它可以包含正常的uppper / lowercase字符,如A-Z,a-z,以及空格。但是名称也可以包含重音字符,如éÄÖÜ等。所以我如何允许重音字符而不允许使用{{1}这样的非名字字符}和/

我试过了:

&

但这与空格和重音字符不匹配。

2 个答案:

答案 0 :(得分:2)

您可以通过unicode范围进行匹配(对于unicode值,请查看this table)。尝试这样的事情:

[a-zA-Z\u00C0-\u017F\s]+

<强>解释

  1. a-zA-Z匹配小写和小写字符范围。
  2. \u00C0-\u017F匹配一大块重音字符。
  3. \s匹配空格。
  4. let nameToCheck = "Lómöwen Thrél"
    let checkValue = /^[a-zA-Z\u00C0-\u017F\s]+$/.test(nameToCheck);
    
    document.write(checkValue ? "valid name" : "invalid name");

答案 1 :(得分:0)

我来自越南,我遇到了同样的问题。但是â, ê, ô, ơ...代替Ä, Ö, Ü。在这种情况下,没有办法正确使用正则表达式(但是.+)。

这是我做过的最简单的方法:

/^[\w\sÄÖÜ]+$/.test(value);

注意:\wa-zA-Z0-9返回true,但空格\s