0
我有一个字符串,它看起来像这样:蟒蛇正则表达式,而不是分裂
"(98119,m1) (229260,m1) (15652,m2)"
以上可以是元素(只有3个在我的例子)
任意数量的我想返回看起来像这样的字符串
"98119 229260 15652"
我可以使用字符串拆分,但这将会是太多的代码。我正在研究正则表达式,但是正则表达式并不是我擅长的。任何人都可以建议如何做到这一点?
我有一个字符串,它看起来像这样:蟒蛇正则表达式,而不是分裂
"(98119,m1) (229260,m1) (15652,m2)"
以上可以是元素(只有3个在我的例子)
任意数量的我想返回看起来像这样的字符串
"98119 229260 15652"
我可以使用字符串拆分,但这将会是太多的代码。我正在研究正则表达式,但是正则表达式并不是我擅长的。任何人都可以建议如何做到这一点?
您可以使用re.findall
和str.join
:
>>> from re import findall
>>> mystr = "(98119,m1) (229260,m1) (15652,m2)"
>>> ' '.join(findall('\(([^,]+),', mystr))
'98119 229260 15652'
>>>
这里是上面的比赛有什么用正则表达式模式的崩溃:
\( # (
( # The start of a capture group
[^,]+ # One or more characters that are not ,
) # The close of the capture group
, # ,
,或只是一个简单的“2个位数以上”,即' '(\ d {2,})'' – 2014-10-21 21:19:59