无法通过读取文件内容成功解析python正则表达式

无法通过读取文件内容成功解析python正则表达式,python,regex,python-3.x,Python,Regex,Python 3.x,我遇到了一个问题,我的正则表达式没有解析我创建的文件的输出: #!/usr/bin/env python3 import wget, re url='' filename=wget.download(url) with open ('Output.txt', "r") as f: readlines=f.read() ret=re.sub("^.*\^", "", readlines) print(ret) 根据这一点,我使用的正则表达式对我的输出有效。我输入的样本输出是这样的: 12

我遇到了一个问题,我的正则表达式没有解析我创建的文件的输出:

#!/usr/bin/env python3
import wget, re
url=''
filename=wget.download(url)
with open ('Output.txt', "r") as f:
    readlines=f.read()
ret=re.sub("^.*\^", "", readlines)
print(ret)
根据这一点,我使用的正则表达式对我的输出有效。我输入的样本输出是这样的:

1212-2010^阅读此部分

其中有一个carot作为分隔符。我尝试了双引号和单引号,但都没有用,我不确定这是否是我代码中的其他地方的问题,或者是什么问题,但是打印输出与我正在寻找的不匹配。想法?

您需要启用多行模式:

re.sub('^.*\^', '', readlines, flags=re.MULTILINE)

如果我正确地阅读了您的问题并进行了编辑,您希望返回“readthispart”,对吗?如果是这样的话,您需要考虑将look behinds与搜索结合使用。看<代码>重新搜索(“(?您在寻找什么?我正在寻找替换文本文件中某行的
1212-2010^
部分。您得到的输出是什么?
ret=re.sub(r“^.*\^”,r“,”读取行)
工作正常,请澄清。我需要使用look-behind断言,因为实际的正则表达式没有替换为空。嗯,似乎没有用“readthispart”替换所有文本和carot“剩余。@xorLogic澄清您希望问题中的输出是什么。更新了答案是的,就是科学家。这实际上起了作用。
(?!\^)。*\^