文件读取输入上的Python正则表达式

文件读取输入上的Python正则表达式,python,regex,Python,Regex,所以我在读一个像这样的文件 f = open("log.txt", 'w+r') f.read() 所以f现在有很多行,但我主要关心的是它有一个数字,然后是一个特定的字符串(例如“COMPLETE”就是字符串) 您将如何……准确地检查此项? 我想应该是这样的: r.search(['[0-9]*'+,"COMPLETE") 但这似乎不起作用?也许是我的正则表达式错了(我做得很糟糕) 但基本上它只需要检查整个字符串(多行,包含\n的数字(特别是200)和单词COMPLETE(大写) 编辑:这里

所以我在读一个像这样的文件

f = open("log.txt", 'w+r')
f.read()
所以f现在有很多行,但我主要关心的是它有一个数字,然后是一个特定的字符串(例如“COMPLETE”就是字符串)

您将如何……准确地检查此项?
我想应该是这样的:

r.search(['[0-9]*'+,"COMPLETE")
但这似乎不起作用?也许是我的正则表达式错了(我做得很糟糕) 但基本上它只需要检查整个字符串(多行,包含\n的数字(特别是200)和单词COMPLETE(大写)

编辑:这里是日志文件的样子,仅供参考

Using https
Sending install data... DONE
200 COMPLETE
<?xml version="1.0" encoding="UTF-8"?>
<SolutionsRevision version="185"/>
使用https
正在发送安装数据…完成
200完成

我只需要确保它写的是“200”并完成它应该是这样的

m = r.search('[0-9]+\s+COMPLETE',line)

如果您只是在寻找“200 COMPLETE”,那么正则表达式在这里就太过了。只需执行以下操作:

if "200 COMPLETE" in log:
    # Do something
您应该使用而不是regex来搜索文件内容中的“200 COMPLETE”,但是您当前的代码无法读取文件,请使用
“w+r”
,因为模式将截断您的文件。您需要执行以下操作:

f = open("log.txt", "r")
log = f.read()
if "200 COMPLETE" in log:
    # Do something

首先,你没有引用你的正则表达式。一些示例数据可能会有帮助。你能在log.txt中发布一个行的示例吗?行是文件中的行。你需要一个源代码来查看吗??