안드로이드 - 자바 split() 메소드 점 ( . ) 인식 불가.
Updated:
Android
안드로이드를 개발 도중 이메일 string을 분할 해야하는 상황이 생겼습니다.
하지만 aaa@google.com 중 google과 com을 .으로 분할 하려니 오류가 발생하였습니다.
오류
String willSplit = "hello.hi";
String[] a = willSplit.split(".");
String front = a[0]; //오류 발생!!
String end = a[1];
Log.e("Check splited", "front: " + front);
Log.e("Check splited", "end: " + end);
java.lang.ArrayIndexOutOfBoundsException: length=0; index=0
와 같은 오류가 발생하였습니다.
이유
참고 사이트에 따르면,
.은 split에서 인식이 안된다는 해답을 얻을 수 있습니다.
해결 방안
split(“.”) 대신에 split(“\.“)으로 변경하여 자바가 .을 인식하게 해줍니다.
String willSplit = "hello.hi";
String[] a = willSplit.split("\\.");
String front = a[0];
String end = a[1];
Log.e("Check splited", "front: " + front);
Log.e("Check splited", "end: " + end);