数字不允许(0-9) - javascript中的正则表达式

时间:2010-12-14 14:38:45

标签: javascript regex

我想要正则表达式,它允许我任何字符,但它不能允许(0-9)数字?

6 个答案:

答案 0 :(得分:50)

像这样:^[^0-9]+$

说明:

  • ^匹配字符串的开头
  • [^...]匹配
  • 内的任何内容
  • 0-9表示0到9之间的任何字符
  • +匹配前一个或多个
  • $匹配字符串的结尾

答案 1 :(得分:45)

简单地:

/^([^0-9]*)$/

该模式匹配任何数量不是09的字符。

我建议您查看http://regexpal.com/。它可以让你轻松测试一个正则表达式。

答案 2 :(得分:14)

\D是非数字,因此\D*是一行中的任意数量的非数字。因此,您的整个字符串应与 ^\D*$匹配。

检查http://rubular.com/r/AoWBmrbUkN它是否完美。

您也可以尝试http://regexpal.com/http://www.regextester.com/

答案 3 :(得分:1)

最好使用^[^0-9]+$之类的正则表达式,而不是[a-zA-Z]+之类的正则表达式,因为您的应用可能有一天可能会接受来自诸如波兰语之类的用户的用户输入,而应该接受更多字符,比仅[a-zA-Z]+。使用^[^0-9]+$可以轻松排除任何此类不良副作用。

答案 4 :(得分:0)

您可以在javascript中尝试类似的方法:
var regex = /[^a-zA-Z]/g;

,并有一个keyup事件。
$("#nameofInputbox").value.replace(regex, "");

答案 5 :(得分:-1)

简单到[a-z]+,或[\S]+,甚至[a-zA-Z]+