특정 문자를 기준으로 문자열을 자를때 indexOf( ), substring( )을 사용하면 된다. 그리고 특정 문자가 반복되는 경우에는 split( )을 사용하면 된다.
1. indexOf( ), substring( )을 이용해 문자열 자르기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | public class StringTest { public static void main(String args[]) { // @를 기준으로 문자열을 추출할 것이다. String mail = "abced@naver.com"; // 먼저 @ 의 인덱스를 찾는다 - 인덱스 값: 5 int idx = mail.indexOf("@"); // @ 앞부분을 추출 // substring은 첫번째 지정한 인덱스는 포함하지 않는다. // 아래의 경우는 첫번째 문자열인 a 부터 추출된다. String mail1 = mail.substring(0, idx); // 뒷부분을 추출 // 아래 substring은 @ 바로 뒷부분인 n부터 추출된다. String mail2 = mail.substring(idx+1); System.out.println("mail1 : "+mail1); System.out.println("mail2 : "+mail2); } } /*****실행결과***** * * mail1 : abced * mail2 : naver.com * * */ | cs |
2. split( )을 이용해 문자열 자르기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | package test; public class StringTest { public static void main(String args[]) { // 특정 문자가 반복될 경우 : '-' 가 반복된다. String birthday = "2016-11-15"; // split()을 이용해 '-'를 기준으로 문자열을 자른다. // split()은 지정한 문자를 기준으로 문자열을 잘라 배열로 반환한다. String date[] = birthday.split("-"); for(int i=0 ; i<date.length ; i++) { System.out.println("date["+i+"] : "+date[i]); } } } /********** 실행결과 ********* * * date[0] : 2016 * date[1] : 11 * date[2] : 15 * */ | cs |
'코딩 > Java' 카테고리의 다른 글
자바 숫자 Format 변경 - DecimalFormat (4) | 2019.08.04 |
---|---|
String 타입을 Date 타입으로 변환 (2) | 2016.11.22 |
자바 추상클래스(abstract class) (0) | 2016.10.23 |
자바 String 클래스 - contains, equals (0) | 2016.10.20 |
자바 String 클래스 - 공백제거 (0) | 2016.10.18 |