[英]python regex to print previous words in text file
我有一個文本文件需要打印其前一個單詞。該文本文件包含以下內容:
Sparrow=beak
Hen=nest Honey=comb
我需要輸出為:
Sparrow
Hen
Honey
編碼:
import re
with open('qwert.txt', 'r') as f:
for line in f:
res = re.findall(r'(?:=(\w-))', line)
if res:
print res
我沒有輸出,請幫忙!
使用正向超前斷言(?=...)
:
import re
with open('qwert.txt', 'r') as f:
for line in f:
for res in re.findall(r'\w+(?==\w)', line):
# Match word characters (`\w+`) followed by `=` and word character.
print res
如果字符串格式有點嚴格,則可以使用split不僅可以獲取鍵,還可以獲取值。
line = "Hen=nest Honey=comb"
keys = [key for key, value in [token.split('=') for token in line.split(' ')]]
然后只需打印出密鑰即可。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.