본문으로 바로가기

자바 특정 문자 기준으로 문자열 자르기

category 코딩/Java 2016. 11. 25. 11:22







특정 문자를 기준으로 문자열을 자를때 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





RSS구독 링크추가 트위터 이메일 구독