正则表达式允许字母和数字,但不包括数字

时间:2014-07-02 16:01:16

标签: javascript regex

我正在尝试为javascript编写一个正则表达式,它允许使用字母和数字但不允许单独使用数字。

所以'12测试街'将验证,'测试街道',但不是'12'。

不熟悉正则表达式,所以我不知道从哪里开始。我设法写道:

^([A-Za-z\d\s]+[A-Za-z\s])+$

这确实有效,但如果在数字的末尾添加了一个空格,它将再次验证。

2 个答案:

答案 0 :(得分:7)

您可以使用否定的预测轻松解决此问题:

^(?!\d+$)[a-zA-Z\d\s]+$

请注意,这允许仅限空格的字符串。如果不希望的话,我会把它作为一个小练习来改变表达。 :)

答案 1 :(得分:1)

如果我几乎严格解释(你没有提到空白字符)你的问题我想这会有效:

^\d*[a-zA-Z][a-zA-Z\d\s]*$