[英]Create dictionary from successful regex matches in python
我對正則表達式非常陌生。 我試圖逐行讀取日志文件,並嘗試找到如下所示的模式,它們可以位於行中的任何位置,而不僅僅是開始位置。
18514&email=dkekrf@yahoo.com"qwqw (need to extract only email=dkekrf@yahoo.com)
"emailTo":"lolllll@gmail.com"
pseId="12121212ffsd"
如何使用re.search一起搜索所有三個模式?
這是一個解決方案。 我希望,它可以提取您想要的電子郵件地址。
我無法創建更准確的正則表達式,因為您沒有提供有關日志文件的更多信息。 另外,我不確定我是否理解您的問題。
import re
for line in open('filename', 'r'):
firstPattern = re.search(r'email=(.*?)"', line)
secondPattern = re.search(r'"emailTo":"(.*?)"', line)
thirdPattern = re.search(r'pseId="(.*?)"', line)
if firstPattern:
print(firstPattern.group(1))
elif secondPattern:
print(secondPattern.group(1))
elif thirdPattern:
print(thirdPattern.group(1))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.