2016-11-23 75 views
0

我使用python进行编程,并且我想知道如何通过查找特定单词来提取数字。例如,StoneA的重量10kg以20m/s的速度移动,StoneB的重量30kg以40m/s的速度移动。我知道我可以使用re.findall来提取数字。但是,如果我只是想提取与速度相关的数字(这是40和20)。有没有办法通过定位“米/秒”如何使用python通过查找特定单词来提取数字

+1

你将需要正则表达式。 ''re'文件:https://docs.python.org/2/library/re.html –

+2

为什么不像这样''re.findall(“(\ d)(?: m/s |速度)“,字符串)'? –

回答

0

您可以使用re.findall单词“速度”或做到这一点:

>>> s = 'StoneA weights 10kg moves with speed 20m/s, StoneB weights 30kg moves with speed 40m/s' 
>>> re.findall(r'(\d+)m/s', s) 
['20', '40'] 

正则表达式(\d+)m/s捕获一个或多个数字紧接着m/s

相关问题