Hel*_*ene 4 python regex string
我试图在一系列字符串中提取字符"M"之前的数字.字符串可能如下所示:
"107S33M15H"
"33M100S"
"12M100H33M"
Run Code Online (Sandbox Code Playgroud)
所以基本上会有一组由不同字符分隔的数字,而"M"可能会出现不止一次.对于此处的示例,我希望我的代码返回:
33
33
12,33 #doesn't matter what deliminator to use here
Run Code Online (Sandbox Code Playgroud)
我能想到的一种方法是将字符串拆分为"M",并查找纯数字的项目,但我怀疑有更好的方法可以做到这一点.非常感谢您的帮助.
Wik*_*żew 14
您可以使用简单的(\d+)M正则表达式(1位数字后跟M数字被捕获到捕获组的位置)re.findall.
请参阅IDEONE演示:
import re
s = "107S33M15H\n33M100S\n12M100H33M"
print(re.findall(r"(\d+)M", s))
Run Code Online (Sandbox Code Playgroud)
这是一个正则表达式演示
| 归档时间: |
|
| 查看次数: |
10668 次 |
| 最近记录: |