Regexはユニコードで動作し、文字列を分割するオプションがいくつかあります。ここでは、文字列が "en"や "es"などの言語コードの境界で分割され、リストに入れられる例を示します。次に、リストを反復し、あなたが望む言語を見つけることです。
>>> text = u"en <chars in english> fr <chars in french> es <chars in spanish>"
>>> languages = set((u'en', u'fr', u'es'))
>>> re_languages = '|'.join(languages)
>>> splitter = re.compile(ur'\b({})\b'.format(re_languages))
>>> splitter.split(text)
[u'', u'en', u' <chars in english> ', u'fr', u' <chars in french> ', u'es', u' <chars in spanish>']
>>> parts=splitter.split(text)[1:]
>>> for i in range(0, len(parts),2):
... if parts[i] == 'es':
... print parts[i+1]
...
<chars in spanish>
>>>
それとも、それらを使用すると、正規表現で特定のlanguage`に `定義するにはどうすればよい時間
>>> re.findall(r'\b(en|es|fr) (.*?)(?:(?= (?:en|es|fr)\b)|$)', text)
[(u'en', u'<chars in english>'), (u'fr', u'<chars in french>'), (u'es', u'<chars in spanish>')]
>>>
1つを見つけることができますか? – Mohammad
あなたは '[英語の単語] - [スペイン語の単語] - ...'のような信頼できる構造を持っていますか、あるいは言語を推測する必要はありますか?これは難しい作業です。 – Jasper
予期した結果の例を投稿できますか?それは本当に明確ではありません... –