2016-01-12 5 views
6

私は自動スペイン語動詞の結合を行うためのツールに取り組んでいます。 1つの時制では、最後の母音をアクセントにするというルールがあります。手紙にアクセントを追加するにはどうすればよいですか?

アクセント付きの文字を取得するためのマップを作成することはできますが、分かりやすい記号を追加するために文字を操作するきれいな、無限の方法があるかどうかは疑問でした。例えば

fue -> fué 

presta -> prestá 

など

+2

文字に追加できるだけのユニコード結合マークがあります。どのような良いUnicodeリファレンスでも、それらが何であるかがわかります。何@MarkRansomへ –

+1

リンクについて話している:https://en.wikipedia.org/wiki/Combining_characterまだpythonでこれを実行するので、どのように – mastazi

+0

@MarkRansomものの例のコードとの適切な答えを見ていいだろうか?本当にあまりにも広範 - – Pat

答えて

6

それはあなたが使用したいエンコーディングに依存します。ラテン語のエンコーディングを使用している場合は、文字マップを使用します。 Unicodeを使用している場合は、combining charactersを使用する方がいいかもしれません。アクセント記号のUnicode文字は「\ u0301」で、適用先の文字の後ろに表示されます。

In [40]: 'fue'+ u'\u0301' 
Out[40]: 'fué' 
+0

ありがとう。私はアクセントを別のキャラクターとして追加するのと同じくらい簡単だとは知らなかった。 – Pat

+2

@Pat注意する必要があります。Unicodeには複数のアクセント文字が含まれています。 [U + 0301](http://www.fileformat.info/info/unicode/char/0301/index.htm)である*結合*文字が必要です。 –

関連する問題