我正在编写一个python脚本,需要通过一个文件并找到某些段落。我能够使用正则表达式成功匹配模式,但是,相同段落出现的次数大于1。我只需要打印出段落的第一次出现。
我是否可以在正则表达式中添加任何只返回第一个出现项的内容?
这是我的正则表达式到目前为止…pattern = re.compile(//#|//s#).+[Ss]
,然后我做matches = pattern.finditer(file_name)
,最后我遍历一个for循环并打印print(i.group())
。注意:我使用finditer()而不是findall()的原因是因为我需要它作为字符串而不是列表打印出来。
任何指导,我如何可以调整我目前的方法,只产生第一个匹配的段落将是伟大的!
您可以简单地使用.search
而不是.finditer
,例如
import re
text = 'A1B2C3'
pattern = re.compile(r'([0-9])')
found = pattern.search(text).group()
print(found) # 1
print(isinstance(found,str)) # True