正则表达式允许字母和空格的组合,但不仅仅是空格
问题描述:
我想知道允许字母和空格组合的正则表达式,但它不应只允许空格。正则表达式允许字母和空格的组合,但不仅仅是空格
我已搜索并阅读了所有文章,并找到了表达式/^[a-zA-Z \ s] * $ /,它只允许空格以及字母和空格的组合。
在此先感谢。
答
让你的表达需要一个字母,然后额外的字母和空格是可选的:
/^[A-Za-z]|[A-Za-z][A-Za-z\s]*[A-Za-z]$/
也是\s
指任何空白字符(制表符,换行符,回车等),而不仅仅是空间。
(编辑:。我以前的答案是有缺陷的这一新的保证输入或者是只有一个字母,或者已经开始,并与只允许在间位字母结束
+0
类似于/^[\ s] * [A-Za-z] + [A-Za-z \ s] * $/ –
+0
嗨,Calvin,谢谢。你的建议让我自己形成正则表达式,它是'[a-zA-Z] + [a-zA-Z \ s] *' –
一种方法是只'OK = pat.test(str.trim());' –
请参阅[此答案](https://stackoverflow.com/a/5600349/3832970)。 –
@AlexK。谢谢,它有帮助,但我想验证它使用模式HTML5的属性 –