我可以使用什么正则表达式来匹配每个单词之间的字母,数字和一个空格?

Alo*_*kin 24 regex

如何创建仅匹配字母和数字的正则表达式,以及每个单词之间的一个空格?

好例子:

Amazing

Hello World

I am 500 years old

不好的例子:

Hello  world

I am 500 years      old.

I    am   Chuck Norris

Joh*_*ica 23

大多数正则表达式实现都支持命名的字符类:

^[[:alnum:]]+( [[:alnum:]]+)*$
Run Code Online (Sandbox Code Playgroud)

你可能很聪明,虽然不太清楚,并简化为:

^([[:alnum:]]+ ?)*$
Run Code Online (Sandbox Code Playgroud)

仅供参考,第二个允许字符串末尾的虚假空格字符.如果你不想坚持使用第一个正则表达式.

另外,正如其他海报所说,如果[[:alnum:]]不适合你,那么你可以使用[A-Za-z0-9].

  • 对不起,刚看到你的编辑.它的工作效果很好以下正则表达式:^([A-Za-z0-9] +?)*$非常感谢你! (3认同)

Muh*_*man 6

^([a-zA-Z0-9]+\s?)*$
Run Code Online (Sandbox Code Playgroud)

其作品