微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用Python在字符串中的字符之前提取数字

如何解决使用Python在字符串中的字符之前提取数字

您可以使用一个简单的(\d+)M正则表达式( _1个以上的数字,然后是M_将这些数字捕获到捕获组中)re.findall

请参阅IDEONE演示

import re
s = "107S33M15H\n33M100S\n12M100H33M"
print(re.findall(r"(\d+)M", s))

这是一个正则表达式演示

解决方法

我正在尝试提取一系列字符串中字符“ M”之前的数字。字符串可能看起来像:

"107S33M15H"
"33M100S"
"12M100H33M"

因此基本上会有一组由不同字符分隔的数字,“ M”可能会出现多次。对于此处的示例,我希望我的代码返回:

33
33
12,33 #doesn't matter what deliminator to use here

我可以想到的一种方法是将字符串除以“ M”,然后找到纯数字的项目,但是我怀疑还有更好的方法来实现。非常感谢您的帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。