1

文字列内のアクセントのある文字の範囲を、それぞれのアクセントのない文字に置き換える必要があります。re.sub を使用することを考えていましたが、同時により多くのアイテム (それぞれを異なるアイテム) に置き換える方法がわかりません。より明確にするために:

import re
re.sub(r'è|ù|ò|à','e,u,o,a',string). 

まず第一に、これはPythonで許可されているので、文字ごとに別々の行を作成するのを避けるために? ありがとう!

4

1 に答える 1

1

re.sub()関数を置換として受け入れることができるため、次のようなことができます。

reps = dict(zip('èùòà', 'euoa'))
re.sub(r'è|ù|ò|à', lambda m: reps[m.group(0)], some_string)

例:

>>> re.sub(r'è|ù|ò|à', lambda m: reps[m.group(0)], 'à ò ù è')
'a o u e'
于 2012-10-03T18:54:55.790 に答える