私は2つのファイルを持っていますが、いくつかのキーワードとプレーンテキストのmyfile.txtを持っています。私はmyfile.txtを開き、各キーワードから始まる特定のテキストを抽出する必要があります"!"で終わります。 例:通常のファイル繰返し
キーワードファイル:
は VRF-
VRF-B
myfile.txtの:あなたが
あるか
こんにちは
!
xvrf-a
番号1
!
こんにちは
あなたは
です!
xvrf-b
番号2
!
出力は次のようになります。
X VRF-
数1
!
X VRF-B
番号2
Iは、以下のコードを試みた:として取得
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継続ではありません:あなたはちょうどあなたが欲しいあなたの出力形式であることを確認する必要がありキーワードファイルを反復しようとしましたが、問題は、正規表現にキーワードを入れている間に正しい結果を得ることができないことです.In ++では、vlaueを取得し、それに応じてvlaueを取得します。キーワードファイルと平文を繰り返し処理するためにループを実行しましたが、問題は、正規表現でリスト値を使用できないことです。パターンに一致する特定のテキストを使用しています。 クレイジー=オープン( "keyword.txt"、 "R +") ライン= crazy.readlines() 行のワードのための再 –
@Ericインポート:オープン( 'mytext.txt' と #print(ワード) 、 fh.read()、re.M) fh.close() crazy.close( 'r')fh: 結果は次のとおりです:re.findall(r'word [^!] + '、fh.read()、re.M) print ) –
ちょうど私が正規表現のリストの値のために使用したいと思っていることを知りたいなら...先に進む方法...ここで私は単語を使用しています(keyword.txtファイルに記述されているキーワード値です) –