[英]Why does IN not evaluate my regular expression?
使用Python 3.x,我正在解析日志文件,並且在大多數行中,只有三個關鍵字(INFO,ERROR或WARN)之一。
我正在定義正則表達式,以查看一行是否包含以下任一單詞:
INFO|ERROR|WARN
我確定這是解決此問題的正確方法,但是它似乎沒有用。 有人知道我在這里想念的嗎?
我只是通過打印來檢查正則表達式是否在行中:
Properties.py
status = "INFO|ERROR|WARN"
Runner.py
import properties as p
import re
line = "[time stamp] INFO [other information]"
print(p.status in line)
line = "[time stamp] ERROR [other information]"
print(p.status in line)
輸出:
False
False
它只打印偽造的東西。
您需要實際調用一個或多個功能re
(未使用in
)使用正則表達式引擎:
print(bool(re.search(p.status, line)))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.