您好我正在写一个正则表达式(我生命中第一次可能会添加)但我无法弄清楚如何做我想要的。到目前为止,非常好,因为我已经只允许字母和空格(只要它不是第一个字符)现在我缺少的是我不想在字符之间允许任何数字......任何人都可以帮助我好吗?
/^[^\s][\sa-zA-Z]+[^\d\W]/
答案 0 :(得分:5)
好的,你需要的是:
/^[a-zA-Z][\sa-zA-Z]*$/
匹配:
^ - start of line
[a-zA-Z] - any letter
[\sa-zA-Z]* - zero or more letters or spaces
$ - the end of the line
如果你想确保它也以字母结尾,那就放一个
[a-zA-Z]
在$
之前。但请注意,该字符串必须至少包含两个字母(每端一个)才能匹配。
答案 1 :(得分:1)
如果您只想允许字母和空格,那么您所拥有的几乎是正确的:
/^[a-zA-Z][\sa-zA-Z]*$/
最后的$
表示字符串的结尾。
编辑正确答案,感谢@Alnitak
答案 2 :(得分:1)
如果您想确保只在单词之间出现空格,请使用:
/^[A-Za-z]+(?:\s+[A-Za-z]+)*$/