使用Python在字符串中的字符之前提取数字
我正在尝试提取一系列字符串中字符“ M”之前的数字。字符串可能看起来像:
"107S33M15H""33M100S"
"12M100H33M"
因此基本上会有一组由不同字符分隔的数字,“ M”可能会出现多次。对于此处的示例,我希望我的代码返回:
3333
12,33 #doesn't matter what deliminator to use here
我可以想到的一种方法是将字符串除以“ M”,然后找到纯数字的项目,但是我怀疑还有更好的方法来实现。非常感谢您的帮助。
回答:
您可以使用一个简单的(\d+)M
正则表达式( _1个以上的数字,然后是M
_将这些数字捕获到捕获组中)re.findall
。
请参阅IDEONE演示:
import res = "107S33M15H\n33M100S\n12M100H33M"
print(re.findall(r"(\d+)M", s))
这是一个正则表达式演示
以上是 使用Python在字符串中的字符之前提取数字 的全部内容, 来源链接: utcz.com/qa/419856.html