我使用的是正则表达式:
/^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)$/
这是一个包含至少1个数字和1个字符的字母数字的正则表达式。
但是我想要一个避免输入数字的正则表达式。即如果只有数字是该字段的唯一输入,那么它应该被拒绝......
那么我应该使用什么样的正则表达式?
修改 我需要的输入可能是'abc111','abc 111','abc @ 111','abc @ 111'
我不需要的输入是'111','sdf'(左右两侧不允许有空格)
由于
答案 0 :(得分:1)
/[^0-9]/
至少有一个非数字。
如果您还想删除空格,请使用Javascript trim() method(最简单!),或使用RegExp捕获除空白之外的所有内容:
/^\s(.*[^0-9].*)\s$)`
说明:
/^ // Start of the line (no characters before)
\s // Any whitespace (thus right after the start of the line)
( // Start capturing group
.* // Any character (zero or more)
[^0-9] // A non-numeric character so at least one is present, as required
.* // Any character (zero or more)
) // End capturing group
\s // Any whitespace (thus right before the end of the line)
$/ // End of the line (no characters after this)
答案 1 :(得分:1)
最简单的一个 - ([^0-9]+)
?