【发布时间】:2019-11-18 10:34:13
【问题描述】:
我正在尝试打印我在文本中找到的所有子字符串。问题是 findall() 不发回子字符串,而是匹配捕获('H','dog')。我希望它发回一个字符串,例如“她的狗吃”
text = open("text_file_thing.txt", "r")
regex_string = "(H|h)er\s+(dog|cat|bird)\s+\w+"
regex = re.compile(regex_string)
match_array = regex.findall(text.read())
print(match_array)
我们将不胜感激。
【问题讨论】:
-
我假设
text是一个多行文件?并且你想在匹配发生时返回整行吗? -
一旦正则表达式匹配并消耗了文本的一部分,它就不会重新访问它。
-
@PyPingu 我只想要子字符串,而不是整行。它是一个多行文件。
标签: python regex python-3.x string printing