Javascript 排除字母字符的正则表达式

Javascript 排除字母字符的正则表达式,javascript,regex,Javascript,Regex,有人能在angular 2中为angular 2输入字段(字母除外)提供一个正确的正则表达式模式吗?这个问题与angular无关,但您可以使用纯javascript实现这一点。regexp对象的test方法返回一个布尔值,显示字符串是否与正则表达式匹配 /^[^a-z]+$/i.test("!@#$%") == true // true /^[^a-z]+$/i.test("Hello") == true // false 在这个正则表达式中,初始的^是行锚点的开始,后面的$是行的结束。表

有人能在angular 2中为angular 2输入字段(字母除外)提供一个正确的正则表达式模式吗?这个问题与angular无关,但您可以使用纯javascript实现这一点。regexp对象的
test
方法返回一个布尔值,显示字符串是否与正则表达式匹配

/^[^a-z]+$/i.test("!@#$%") == true  // true
/^[^a-z]+$/i.test("Hello") == true  // false
在这个正则表达式中,初始的
^
是行锚点的开始,后面的
$
是行的结束。表达式的其余部分匹配1个或多个非字母顺序的字符。末尾的
i
标志使其不区分大小写


有很多不错的在线正则表达式测试工具。一个是。

如何限制a-z和a-z值,我使用的是[Validators.pattern(“[^a-zA_z]+$”),但它不起作用,
i
就是为了这个。使用在线测试仪。您的示例使用下划线而不是连字符,这将无法提供您想要的结果。此外,您可能希望在前面有一个
^
锚定,否则您将获得以符号结尾但仍然可以包含字母的匹配项。Thnks,它与以下内容配合使用:[Validators.pattern('[^a-zA-Z]+$')]