코딩/JAVA

[JAVA] 문자열을 split 함수를 사용해서 특정 구분자로 나눠보자

밤유리 2022. 11. 19. 01:48
반응형

문자열에서 특정하게 구분하는 문자를 지정하여, 문자열을 나눠야 할 때 split 함수를 사용한다.

여러 방면으로 쓸모가 있는 거 같아 정리한다. 

 

 


 

split ( String regex )

 

먼저, 마침표(.)로 구분되어 있는 문자열을 선언한다.

그 후에 split 함수를 사용하여 마침표(.)로 구분하고 temp라는 배열로 받는다. 

💡 [ ] 넣어주지 않으면 제대로 실행이 되지 않았다.

 

// 문자열 대상 선언
String target = "첫번째.두번째.세번째.네번째";

// Null 또는 빈칸이 아닐 때 실행
if (target != null && !target.equals("")) {
    // . 으로 구분
    String[] temp = target.split("[.]");
    // 출력
    for (int i=0; i< temp.length; i++) {
        System.out.println("IDX " + i + " : " + temp[i]);
    }
} else {
    // Null 또는 빈칸인 경우
    System.out.println("결과 : 없음");
}

 

 

실행하여 결과를 확인하니까 잘 구분되어 출력한 거 같다.

 

 

 

 

 

 

split ( String regex , int limit )

 

두 번째 파라미터로 int 값을 줄 수 있는데, 자르는 배열의 개수를 제한할 수 있다.

다음으로 2를 넣어 줘서 실행해 보았다.

 

// 구분자(.)으로 나누기 - 두번째 파라미터 2 추가
String[] temp = target.split("[.]", 2);

 

실행하여 결과를 확인하니까 배열이 2개로 제한되는 것을 볼 수 있다.

 

 

 

 

 

split ( String regex , -1 )

 

두 번째 파라미터에 음수인 -1을 넣어줄 수 있는데, 이 경우에는 공백도 배열에 배열에 포함하여 넣어준다.

 

// 문자열 대상 선언 (네번째 생략)
String target = "첫번째.두번째.세번째..다섯번째";

// Null 또는 빈칸이 아닐 때 실행
if (target != null && !target.equals("")) {
    // 구분자(.)으로 나누기 - 공백 포함
    String[] temp = target.split("[.]", -1);
    // 출력
    for (int i=0; i< temp.length; i++) {
        System.out.println("IDX " + i + " : " + temp[i]);
    }
} else {
    // Null 또는 빈칸인 경우
    System.out.println("결과 : 없음");
}

 

이렇게 코드를 수정하고 다시 결과를 확인해 보니, 공백을 포함한 배열이 생성된 것을 확인해 볼 수 있었다.

 

 

 

 

 

이상, 밤톨만큼 코딩했다.

 

 

📚 참고
반응형