- 題名: IndexOfがうまく動作しない
- 日時: 2007/01/27 13:44:56
- ID: 18942
- この記事の返信元:
- (なし)
- この記事への返信:
- [18944] Re[1]: IndexOfがうまく動作しない2007/01/27 16:42:23
- ツリーを表示
■No18942に返信(こうささんの記事) > string aa = "あいう゜えお"; > int val = aa.IndexOf("いう"); > > とすると、valが-1になってしまいますが、 > 原因と対策が分かる方、ご教授いただけると幸いです。 どうも仕様のような気がします。 例えば以下のようにすると string aa = "あいか゛えお"; int val = aa.IndexOf("が"); val に 2 が入りますし、そういうものかもしれません。 (詳しくないのであまり言及できないけど、Unicode 関係の話かな?) 対策…というか、こういう仕様な以上は下のようにベタな方法でやってみる しかないかもしれないですね。 # あまりにベタすぎて目から汗が orz string aa = "あいう゜えお"; string bb = "いう"; for (int i = 0; i < aa.Length - bb.Length; i++) { if (aa.Substring(i, bb.Length) == bb) { MessageBox.Show(i.ToString()); break; } } なんかあまり役に立てなくてすいません。
分類:[.NET]
VS2003, C# の環境で、
string aa = "あいう゜えお";
int val = aa.IndexOf("いう");
とすると、valが-1になってしまいますが、
原因と対策が分かる方、ご教授いただけると幸いです。