我在下面有一个字符串。
Str= """Feb 11 22 error Start"
我需要检查上面的字符串中是否有错误,然后打印是
我是python的新手。请帮助。
答案 0 :(得分:0)
您可以使用此功能检查是否存在错误:
def checkError(Str):
if 'ERROR' in Str:
openBracket = Str.find('(')+1
closedBracket = Str.find(')')
status = "".join(Str[openBracket:closedBracket])
error = "\n".join(['YES',", ".join(Str.split('\n\n')[2].split(', ')[1:]),status])
return error
else:
return 'No errors found.'
error = checkError(Str)
print(error)
输出:
YES
22:17:31 Wed Feb 11, 2015
software ERROR
答案 1 :(得分:0)
我提供了两种不同的方式(即regex
和find()
)来获取给定字符串所需的元素。可以使用任何一种方法。
import re
def get_log(Str):
if 'ERROR' in Str:
date = re.search('\d{2}:\d{2}:\d{2} \w{3} \w{3} \d{2}, \d{4}', Str)
error = Str[Str.find("(")+1:Str.find(")")]
result = 'YES,\n'+date.group()+',\n'+error
print(result)
get_log(Str)