如何用Python正则表达式从指定字符串提取多段数值?
解决方案
使用Python的re模块,通过正则表达式提取符合01-999范围的数字:
import re a = '91:99 OT (87:87)' # 匹配01-09或1-999的数字 nums = re.findall(r'(0[1-9]|[1-9]\d{0,2})', a) print(nums) # 输出 ['91', '99', '87', '87']
正则表达式说明
0[1-9]:匹配两位的01-09这类数字[1-9]\d{0,2}:匹配1-999的数字(包含1位的1-9、两位的10-99、三位的100-999)- 两者通过
|组合,刚好覆盖你需要的01到999的数值范围,同时排除了单个0的无效情况。
内容的提问来源于stack exchange,提问作者ahmedaao
相关产品推荐
相关产品推荐

