2017-12-13 10 views
1

を変更:解析テキスト私はこのような場所名解析する

à : Paris (France) 

をしかし、多くの場合、それは私がこれを試してみました。この

à : Boston (MA) (États-Unis) 

のようなアメリカの場所に遭遇しましたそれを構文解析してください:

place='à : (?P<city>.+) (\((?P<country>.+)\)|(\((?P<state>.+)\) \((?P<country>.+)\)))' 

しかし、それは動作していないと私の初心者の理解を超えています。これを処理する方法

?あなたは数量詞?使用状態グループをオプションにすることができます

答えて

2

à : (?P<city>\S+) (?:\((?P<state>\S+)\))?\((?P<country>\S+)\) 
#     ^^^     ^^ 

demoを参照してください。

à : (?P<city>\S+) \((?P<state>\S+)\) \((?P<country>\S+)\) 

à : (?P<city>\S+) \((?P<country>\S+)\) 
:それは両方が一致するその場合

関連する問題