본문 바로가기
프로그래밍/자바(Java)

[Java] 문자열 자르기 split() 사용방법

by imfireguy 2022. 7. 26.
반응형

자바 split() 사용방법

1) split(String regex)

split 매소드는 입력받은 정규표현식 혹은 특정문자를 기준으로 문자열을 나누어서 배열(Array)에 저장하여 리턴 합니다.

String[] 변수 = 문자열.split(regex);

 

예제)

public class SplitTest {

	public static void main(String[] args) {
		
		String idx = "11,12,13,14,15";
		
		String[] arrIdx = idx.split(",");
		
		String idx0 = arrIdx[0];
		String idx1 = arrIdx[1];
		String idx2 = arrIdx[2];
		String idx3 = arrIdx[3];
		String idx4 = arrIdx[4];
		
		System.out.println("idx0 " + idx0);
		System.out.println("idx1 " + idx1);
		System.out.println("idx2 " + idx2);
		System.out.println("idx3 " + idx3);
		System.out.println("idx4 " + idx4);
		
		
		for (int i = 0; i < arrIdx.length; i++) {			
			System.out.println("for ??? " + arrIdx[i]);
		}

	}

}

 

결과)

idx0 11
idx1 12
idx2 13
idx3 14
idx4 15
for ??? 11
for ??? 12
for ??? 13
for ??? 14
for ??? 15

 

2) split(String regex, int limit)

기존split 매소드에서는 인자를 한개만 받는것과 달리 int형의 두번째 인자값을 받는 split 사용방법 입니다.

String[] 변수 = 문자열.split(regex, limit);

 

예제)

public class SplitTest {

	public static void main(String[] args) {
		
		String idx = "11,12,13,14,15";
		
		String[] arrIdx2 = idx.split(",", 2);
		
		for (int i = 0; i < arrIdx2.length; i++) {
			System.out.println("for2 ???" + arrIdx2[i]);
		}
		
		
		String arr0 = arrIdx2[0];
		String arr1 = arrIdx2[1];
		
		System.out.println("arr0 " + arr0);
		System.out.println("arr1 " + arr1);		
		
			
	}

}

 

결과)

for2 ???11
for2 ???12,13,14,15
arr0 11
arr1 12,13,14,15

 

번외적으로 혹시나 궁금하실분이 있으실거 같아서 

String[] arrIdx2 = idx.split(",", 2); 

여기서 2라고 limit을 2라고 지정했는데

String arr1 = arrIdx2[2]; 

이렇게 선언하는 경우 어떻게 될까요?

이런식으로 자바에서 배열의 크기를 벗어났다는 에러를 발생하니 참고 하시기 바랍니다.

반응형

댓글