首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >允许单词之间有空格的正则表达式

允许单词之间有空格的正则表达式
EN

Stack Overflow用户
提问于 2013-03-18 16:52:53
回答 13查看 654.3K关注 0票数 236

我想要一个正则表达式,防止符号,只允许字母和数字。下面的正则表达式工作得很好,但它不允许单词之间有空格。

代码语言:javascript
运行
复制
^[a-zA-Z0-9_]*$

例如,在使用此正则表达式时,"HelloWorld“可以,但"Hello World”不匹配。

我如何调整它才能留出空格?

EN

回答 13

Stack Overflow用户

发布于 2013-03-18 17:46:43

一种可能是只将空格添加到字符类中,就像acheong87建议的那样,这取决于您对模式的严格程度,因为这也允许以5个空格开头的字符串,或者只由空格组成的字符串。

另一种可能是定义一个模式:

我将使用\w,它在大多数正则表达式中与[a-zA-Z0-9_]相同(有些是基于Unicode的)。

代码语言:javascript
运行
复制
^\w+( \w+)*$

这将允许一系列至少一个单词,并且单词由空格分隔。

^匹配字符串的开头

\w+匹配一系列至少一个单词字符

( \w+)*是重复0次或更多次的组。在组中,它需要一个空格,后跟一系列至少一个单词字符

$匹配字符串的末尾

票数 144
EN

Stack Overflow用户

发布于 2014-01-14 06:48:34

这个很适合我

代码语言:javascript
运行
复制
([\w ]+)
票数 31
EN

Stack Overflow用户

发布于 2013-03-18 16:55:01

尝试使用:

代码语言:javascript
运行
复制
^(\w+ ?)*$

解释:

代码语言:javascript
运行
复制
\w             - alias for [a-zA-Z_0-9]
"whitespace"?  - allow whitespace after word, set is as optional
票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15472764

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档