◽ Java language/Java
[Java - (12) ] indexOf( ), substring( ) → 특정한 문자열 기준으로 자르기, split( ) → 자른 문자열 배열에 넣기
kkk20000a
2019. 8. 25. 21:37
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
*
*
*/
Color Scripter
|
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
|
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
*
*/
Color Scripter
|
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
|
//a;b;c;d;e;f; 이런 형태의 데이터를 구분자를 제거하여 리스트에 담는 과정.
for(int i=0; i<delMyAccount.length;i++){
int index = delMyAccount[i].indexOf(";");
String tmp1 = delMyAccount[i].substring(0, index);
String moveIpAcco2 = delMyAccount[i].substring(index+1);
index = moveIpAcco2.indexOf(";");
String tmp2 = moveIpAcco2.substring(0, index);
String moveIpAcco3 = moveIpAcco2.substring(index+1);
index = moveIpAcco3.indexOf(";");
String tmp3 = moveIpAcco3.substring(0, index);
String moveIpAcco4 = moveIpAcco3.substring(index+1);
index = moveIpAcco4.indexOf(";");
String tmp4 = moveIpAcco4.substring(0, index);
String moveIpAcco5 = moveIpAcco4.substring(index+1);
index = moveIpAcco5.indexOf(";");
String tmp5 = moveIpAcco5.substring(0, index);
String tmp6 = moveIpAcco5.substring(index+1); // 마지막
}
|
>>> 이걸 한줄로 요약하면 StringUtil.splits(tmp.getService(), ";") 로도 짤 수 있다.
아예 StringUtil로 자바에서 제공한다. 뒤늦게 알아서 아쉽지만 찾긴 찾았다.
이런식으로도 이용 할 수 있다.