자바에서는 문자열을 자르는 방법이 많이 있습니다.
이번에는 그 중 split이라는 함수를 이용해서 문자열을 자르는 방법에 대해서
정리를 해보려고 합니다.
해당 함수는 문자열을 자르는 함수입니다.
구분자를 지정해서 해당 구분자를 기준으로 잘라서
배열에 저장하는 함수입니다.
말로 설명을 하는 것보다
직접 예제로 보는 것이 제일 빠르고 정확할테니
한번 보여드리도록 하겠습니다.
1. 기본사용법
기본 사용법은 다음과 같습니다.
public static void main(String[] args) { String str = "수학;영어;과학;"; String arr[] = str.split(";"); for(int i = 0; i<arr.length; i++) { System.out.println("arr[" + i + "] : " + arr[i]); } }
위와 같이 소스코드를 작성합니다.
그러면 수학, 영어, 과학이 각각 잘라서
arr이라는 배열에 들어가지게 되어 있습니다.
그래서 System.out.println으로 해서 그냥 화면에 출력하는 것입니다
결과는 다음과 같습니다.
2. 구분자가 붙어있는 경우
하다보면 실제 잘라야 할 데이터보다
구분자가 많을 수 있습니다.
이럴 때 아래처럼 사용하셔도 되십니다.
public static void main(String[] args) { String str = "수학;영어;;"; String arr[] = str.split(";"); for(int i = 0; i<arr.length; i++) { System.out.println("arr[" + i + "] : " + arr[i]); } }
위처럼 사용을 하시면
아래처럼 결과가 나옵니다.
즉, 구분자가 몇개이든 데이터가 있는 부분만 나오게 되는 것입니다.
그런데 개발을 하다보면
구분자 갯수만큼 배열을 생성해야 하는 경우도 있습니다.
이럴 때는 다음과 같이 하시면 되십니다.
public static void main(String[] args) { String str = "수학;영어;;"; String arr[] = str.split(";", -1); for(int i = 0; i<arr.length; i++) { System.out.println("arr[" + i + "] : " + arr[i]); } }
그러면 아래와 같이 나옵니다.
위처럼 구분자 갯수 만큼 배열이 생성 되어
값을 넣게 됩니다.
간단하게 -1을 붙이면 되는 것입니다.
3. 지정된 개수만큼 자르기
배열의 최대 갯수를 지정하고 싶을 수 있습니다.
이럴 때는 배열의 크기를 지정하시면 되십니다.
예제 소스는 다음과 같습니다.
public static void main(String[] args) { String str = "수학;영어;과학;"; String arr[] = str.split(";", 2); for(int i = 0; i<arr.length; i++) { System.out.println("arr[" + i + "] : " + arr[i]); } }
위처럼 작성을 하시면
배열은 2개만 생성이 되고,
2번째 배열에 2번째 잘리는 값 이후의 모든 데이터가
들어가지게되어 있습니다.
그래서 결과는 다음과 같습니다.
위처럼 결과가 나오게 되는 것입니다.
즉, 제한하고 싶은 배열의 갯수를 적어주시면 되십니다.
저는 2개로만 제한을 할 것이기 때문에
2로 적었던 것입니다.
자바에서는 substring등 문자열을 자를수 있는 방법은 많이 있습니다.
각각 사용할 때 용도, 데이터의 형식 등에 따라서
편한걸 사용하시면 되실 것 같습니다.
이상으로 Java에서 split 함수를 이용하여 배열로 문자열을 자르는 방법이였습니다~
'컴퓨터관련 > Java' 카테고리의 다른 글
[Java]이클립스 강제 Pull 받기 (1) | 2019.05.29 |
---|---|
[Java]자바의 버젼 및 분류 정리 (0) | 2019.05.15 |
[Java]이클립스에서 class파일 생성이 안될 때 (1) | 2019.05.13 |
[이클립스]콘솔 로그 아이콘 설명 (0) | 2019.04.29 |
[이클립스]콘솔 버퍼사이즈 올려 라인수 늘리기 (0) | 2019.04.03 |