我有2個文件,其中一個與一些關鍵字和其他與純文本ie myfile.txt,我需要打開一個myfile.txt並提取特定文本開始與每個關鍵字(在關鍵字文件中提到)並以「!」結尾 例如:定期exp文件迭代
關鍵字文件:
VRF-A
VRF-B
的myfile.txt:
你好
你怎麼樣
!
x vrf-a
number 1
!
hi
howa are you
!
x vrf-b
2號
!
輸出應該是:
X VRF-A
數1
!
X VRF-B
數2
我嘗試下面的代碼:
import re
crazy = open("keyword.txt","r+")
lines = crazy.readlines()
for word in lines:
#print(word)
with open('mytext.txt', 'r') as fh:
result = re.findall(r'word[^!]+', fh.read(), re.M)
print(result)
fh.close()
crazy.close()
輸出得到爲: [] [] 表示沒有匹配
你好@RomanPerekhrest,我已經作出了努力,這是不是最後一部分的duplicate..its延續......我試圖迭代關鍵字文件,但問題是,我無法得到正確的結果,而我把正則表達式中的關鍵字..在c + +,我們準備&獲得vlaue,並相應地得到corrosponding vlaue ..在這裏,我已經運行循環迭代th關鍵字文件和明文,但問題是,我不能夠在正則表達式中使用列表值。它使用specfic文本來匹配pattern..not列表索引.. –
@Eric進口重新 瘋狂=打開( 「keyword.txt」, 「R +」) 線= crazy.readlines() 用於行字: #PRINT(字) 張開( 'mytext.txt', 'r')爲fh: result = re.findall(r'word [^!] +',fh.read(),re.M) print(result) fh.close() crazy.close ) –
只是好奇地知道......如果我們想用於正則表達式中的列表值...如何繼續...在這裏我使用word(這是在keyword.txt文件中提到的關鍵字值 –