什么是" u0080 - "和" u024F"在Jquery验证正则表达式?

时间:2013-10-23 20:59:37

标签: javascript jquery regex validation unicode

我想为City Names创建一个验证,所以我选择了Google的Regex代码,允许用户只接受字母和一些字符,并确保城市名称只接受“Letters”和“space”b / w两个字。

这是我最初找到的代码

jQuery.validator.addMethod("cityvalidation", function (value, element) {
      return this.optional(element) || /^[a-zA-Z\u0080-\u024F\s\/\-\)\(\`\.\"\']+$/i.test(jQuery.trim(value));
}, "You Have Typed Unallowed Charactors");

这是我为城市名称验证修改的代码:

jQuery.validator.addMethod("cityvalidation", function (value, element) {
        return this.optional(element) || /^[a-zA-Z\u0080-\s\)\(]+$/i.test(jQuery.trim(value));
}, "Please provide a valid city name!");

我删除了我认为不应该接受的内容,如:“/ - \`。\”\'\“但我不确定”“是什么意思?我搜索了Unicodes并找到了关于“u024F”= Ɏ,所以也删除了但仍然不知道“ u0080 ”。

此外,我注意到在许多正则表达式中,这些unicode都作为输入选项提供。

有人可以指导一下这意味着什么以及为什么几乎所有的Regex代码都使用它们?

1 个答案:

答案 0 :(得分:3)

\u0080-\u024F内的[...](称为“字符类”)表示从\u0080\u024F(包括)的所有字符。 (“字符类”的另一个示例:[a-f]表示af包含{。}}。\uXXXX形式是使用代码XXXX的Unicode转义。您可以在Unicode site上查找字符的内容,其中每个字符都有一个页面(例如U+0080U+024F)。