Skip to main content
 首页 » 编程设计

python简单的正则表达式帮助

2025年05月04日24lautakyan007

您好,这里是第一次使用正则表达式的用户。 只是想找出一些正则表达式,但需要一些帮助。

我有一个包含以下项目的文本文件:

10:67 12:12 01:50 23:60 23:50

我正在尝试获取有效时间列表,以便 输出应该是:

['12:12', '01:50', '23:50']

这是我的代码:

import re 
inFile = open("text.txt") 
text = inFile.read() 
pattern = re.findall('([01]\d|2[0-3]):[0-5]\d', text) 
print pattern 

我的输出是:

['12', '01', '23']

对找出问题有什么帮助吗?谢谢!!!

请您参考如下方法:

Python 显然只打印第一组(在你的例子中是 ([01]\d|2[0-3]))。如果您对其进行非捕获组 ((?: ... )),您应该会看到所需的结果:

text = '10:67 12:12 01:50 23:60 23:50' 
pattern = re.findall('(?:[01]\d|2[0-3]):[0-5]\d', text) 
print pattern 

显示:

['12:12', '01:50', '23:50'] 

有关(非)捕获组的更多信息:http://www.regular-expressions.info/brackets.html