Py学习  »  Python

python regex两个单词分开

Olivera Tancheva • 5 年前 • 1477 次点击  

我有这个regex: ^[ ]{0,1}[^\s]+$ 只匹配一个词的人,例如: . 我想再加一个词,用空格隔开。例如: Silver silver 1 min 也应该是一场比赛。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/39030
 
1477 次点击  
文章 [ 2 ]  |  最新文章 5 年前
The fourth bird
Reply   •   1 楼
The fourth bird    6 年前

对于示例数据,也可以使用 \w+ 与一个字符匹配一次或多次。使用 [^\s]+ \S+ 匹配一个或多个非空白字符,范围更广。

你的正则表达式从 [ ]{0,1} 它与零或一次空白相匹配,这使得它是可选的。在开始处保留空白并使用问号使其成为可选的,您可以添加可选的分组结构。 (?:[ ]\w+)? 它将匹配一个空格,然后匹配一个单词字符的一次或多次。

你的regex看起来像:

^[ ]?\w+(?:[ ]\w+)?$

Regex demo

Matt.G
Reply   •   2 楼
Matt.G    6 年前

试用regex: ^[^\s]+(?: [^\s]+)?$

Demo