実現したいこと
テキストファイルを読み込んで、特定の文字列を取り除いた新しいテキストファイルを作りたいです。
ある特定の文字列Aから、ある特定の文字列Bの直前まで、文字列Aを含んだ文字列を削除したいです。
実現したい形は以下の形ですが、プログラムを実行しても実現できませんでした。
pet-new.txt 実現したい形
txt
1"ペット1": "名前:トム,種類:犬", 2"ペット2": "名前:ポチ,種類:猫", 3"ペット3": "名前:ジェリー,種類:ハムスター",
該当のソースコード
pet.py
python
1# 年齢:数字 を取り除きたい 2import re 3import sys 4 5linechange = "" 6f = open("pet.txt", 'r',encoding="utf-8") 7new_file_name = "pet-new.txt" 8outfile = open(new_file_name, "w") 9 10for line in f: 11 hit = re.findall(r'年齢:(.+?),種類:',line) 12 13 if hit: 14 print("hit:",hit) 15 linechange = line.strip("年齢:"+str(hit)+",") 16 print("linechange::",linechange) 17 print("type linechange::",type(linechange)) 18 outfile.write(linechange) 19 20f.close() 21outfile.close() 22
pet.txt
1"ペット1": "名前:トム,年齢:4,種類:犬", 2"ペット2": "名前:ポチ,年齢:10,種類:猫", 3"ペット3": "名前:ジェリー,年齢:1,種類:ハムスター",
試したこと
.findも使おうとしたのですが、訳がわからなくなりました、、
まだ学習始めですが、正規表現が自分にはとても難しく感じます、、
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/03/19 13:19