言語処理100本ノック 2020「25. テンプレートの抽出」
問題文
問題の概要
この辺りから、正規表現芸人っぽくなってきます。Wikipediaの「基礎情報」テンプレートの書き方*1が参考になります。
import re import pandas as pd df = pd.read_json('ch03/jawiki-country.json.gz', lines=True) uk_text = df.query('title=="イギリス"')['text'].values[0] uk_texts = uk_text.split('\n') pattern = re.compile('\|(.+?)\s=\s*(.+)') ans = {} for line in uk_texts: r = re.search(pattern, line) if r: ans[r[1]] = r[2] print(ans)