1

「zürich」と「zurich」の文字列比較をしようとしています。次のようなものです。

int compareResult = String.Compare(zürich, zurich);

したがって-1、後で if-else に compareResult を使用しているため、 が返され、問題が発生します。

なぜこれが起こるのかについて、誰かが私を正しい方向に向けることができますか. 「チューリッヒ」を比較する前にこれを最初にきれいにする必要がありますか、それとも別のものですか?

4

1 に答える 1

0

このメソッドは問題なく使用できますが、文字列は実際には異なります。

したがって、この比較を自分のやり方で行うには、次のものが必要です。

  1. ü やその他の「特殊な」ラテン文字を使用するすべての比較を単純な文字と見なすかどうかを決定します。 つまり、ü が表示されるたびに、それは "u" として扱われます。
  2. その場合、両方の文字列の前処理を行い、すべての特殊文字を通常の文字に置き換える必要があります。ここに別のスレッドがあります: 文字列のアクセントを削除するにはどうすればよいですか?

それが役に立ったことを願っています。

于 2013-02-20T12:50:08.940 に答える