読者です 読者をやめる 読者になる 読者になる

【Java】小数点(ピリオド) でsplitしたいが上手くいかない

小数点関係でピリオドでsplitしたいのだが上手くいかなくてしばらく悩んだ。

 

【修正前】

String splitArray  =  str.split(".");

splitした文字列を使おうとするとjava.lang.ArrayIndexOutOfBoundsExceptionが出る。配列の中身を見てみたら空っぽだった。

 

【修正後】

String splitArray  =  str.split("\\.");

※「\」は実際には「半角¥」

 

【参考URL】

Javaの道:文字列(6.文字列の分割)

String str2 = new String("java.Java.JAVA");
String[] str2Ary = str2.split("\\.");

//文字列"java Java JAVA"を.で分割し、配列str2Aryに代入します。
//.は正規表現では任意の文字という特殊な意味を持ちます。
//そのため、\でエスケープする必要があります。 

 

正規表現をきちんと理解している人ならこんな間違いをしないんだろうなあ…。