匹配的非空白表達我想使用re.search以提取所述第一組的非空白字符。我有以下pseudoscript,再現我的問題:經常用於在Python
#!/usr/bin/env python2.7
import re
line = "STARC-1.1.1.5 ConsCase WARNING Warning"
m = re.search('^[^\S]*?',line)
if m:
print m.group(0)
這似乎是打印空白的,而不是STARC-1.1.1.5
到目前爲止,據我瞭解,這個正則表達式是說: 在生產線開始,找到了一組非空白字符,不要貪
我敢肯定這會工作,documentation說,我可以使用/ S,以匹配[]空白,所以我是不知道問題出在哪裏。
現在,我知道,我知道這可能看起來奇怪,你爲什麼不我使用一些其他的功能做到這一點?那麼,有不止一種方式來皮膚貓,我仍然得到了正則表達式在Python中的懸掛,所以我想知道如何使用re.search以這種方式提取這個領域。
這裏是另一個 re.split( 「\ S *」,線)[0] – e4c5
@melpomene re是貪婪。它不會分裂在這裏的空字符串 – e4c5
@ e4c5我試過了,得到了'FutureWarning:split()需要一個非空模式match.'用'\ s +'我沒有得到警告。 – melpomene