我有以下文字:
Total: 192.5ms +/- 4.3%
我想得到 float 192.5
,Total
label 只出现一次,所以我可以使用这个:Total:\s+[0-9.]+
regular expression to get
Total: 192.5
然后分裂:
并得到192.5
我想192.5
在一个正则表达式中直接获取浮点数。我需要什么正则表达式才能直接得到它?
我有以下文字:
Total: 192.5ms +/- 4.3%
我想得到 float 192.5
,Total
label 只出现一次,所以我可以使用这个:Total:\s+[0-9.]+
regular expression to get
Total: 192.5
然后分裂:
并得到192.5
我想192.5
在一个正则表达式中直接获取浮点数。我需要什么正则表达式才能直接得到它?
使用捕获组:
总计:\s+([0-9.]+)
并抓住第 1 组。
>>> import re
>>>
>>> s = 'Total: 192.5ms +/- 4.3%'
>>>
>>> re.search(r'Total:\s+([0-9.]+)', s).group(1)
'192.5'
192.5
是第一个数字字符串;搜索数字字符串,然后用于group()
获取该字符串。
>>> import re
>>> re.search(r'\d+\.\d+', 'Total: 192.5ms +/- 4.3%').group()
'192.5'
或使用re.findall
:
>>> re.findall(r'\d+\.\d+', 'Total: 192.5ms +/- 4.3%')
['192.5', '4.3']
>>> re.findall(r'\d+\.\d+', 'Total: 192.5ms +/- 4.3%')[0]
'192.5'