私は次の2つのリストを持っています:
input = ['MAPLEWOOD AVE', 'LYNNDALE ', 'SUGAR DR']
ref = ['LYNNDALE (?:RD)?', 'HOMAN (?:AVE)?', 'MAPLEWOOD (?:AVE)?', 'LYNNDALE (?:LN)?']
input
with内の各要素に一致するものをすべて探したいと思いますref
。input
出力は、次のように、各キーが要素であり、各値がref
対応する要素に一致する要素である辞書にinput
なります。
{'MAPLEWOOD AVE' : 'MAPLEWOOD AVE', 'LYNNDALE ' : 'LYNNDALE RD', 'LYNNDALE LN', 'SUGAR DR':}
以下では、 (埋め込まれた正規表現グループを含む)内の一致input
を検索するために反復することができます。ただし、対応する一致要素を各入力要素の横の値として取得することはできません。findall
ref
ref
combined = "(" + ")|(".join(ref) + ")"
l = []
for i in input:
if re.findall(combined,i):
l.append(i)
...
MAPLEWOOD AVE
LYNNDALE