文字列からアクセントを削除するより効率的な方法があります。例えばCの文字列からアクセントを削除する
:
removeaccents("áèfoo")
出力:そこASCIIテーブルの
aefoo
無アクセント、私はこれを行うにはどのようには考えています。前もって感謝します。 :)
文字列からアクセントを削除するより効率的な方法があります。例えばCの文字列からアクセントを削除する
:
removeaccents("áèfoo")
出力:そこASCIIテーブルの
aefoo
無アクセント、私はこれを行うにはどのようには考えています。前もって感謝します。 :)
あなたが探しているような音unac()
。 manページから:
unac
is a C library that removes accents from characters, regardless of the character set (ISO-8859-15, ISO-CELTIC, KOI8-RU...) as long asiconv(3)
is able to convert it into UTF-16 (Unicode).
私は、ダウンロードページを見つけることができませんでした(私はhereであることを意図だと思うが、リンクは現在404ingされます)。
sudo apt-get install libunac1-dev
あなたはそれがインストールされています一度あなたとリンクするようにコンパイラに指示する(あなたのコンパイラオプションに-lunac
を追加する必要があります、GCCを使用していると仮定すると:あなたがUbuntuのにしている場合は、あなたがそれを得ることができますunacライブラリ)。
ありがとうございます。私はダウンロードしてインストールしましたが、リンクを試してコンパイルすると、次のエラーが発生します: '/tmp/ccAKGVl9.o:' main '関数内: ILD.c :(。text + 0x651) unac_string」 collect2は:ldは1つの終了ステータスを返した '私のコード: 'の#include
' gcc'で '-lunac'オプションを使って解決し、' ISO-8859-1'を 'UTF-8'エンコーディングに変更しました。どうもありがとうございます:) – Jack
大歓迎です。私は答えにそれを編集:) –
変換テーブルではなく、いつでもラダーを使用できます。 –
文字列がどのようなエンコーディングを使用していますか? – loganfsmyth
可能なヘルプの質問:http://stackoverflow.com/questions/144761/how-to-remove-accents-and-tilde-in-ac-stdstring – chikuba