스페이스 기준으로 혹은 컴마로 혹은 공백을 기준으로 문자열들을 분리한다던가, 특정 문자에 따라 문자열을 나누고 싶을 때 StringTokenizer를 사용합니다.
//1. 띄어쓰기 기준으로 문자열을 분리
StringTokenizer st = new StringTokenzier(문자열);
//2. 구분자를 기준으로 문자열을 분리
StringTokenizer st = new StringTokenizer(문자열, 구분자);
//3. 구분자를 기준으로 문자열을 분리할 때 구분자도 토큰으로 넣냐 마냐
StringTokenizer st = new StringTokenizer(문자열, 구분자, true/false);
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) {
String str = "안녕하세요 슬기로운개발생활 tistory 입니다.";
StringTokenizer st = new StringTokenizer(str);
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
}
}
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) {
String str = "오늘!날씨는!맑음";
StringTokenizer st = new StringTokenizer(str, "!");
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
}
}
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) {
String str = "블로그 >슬기로운 개발생활 :dev-coco.tistory.com";
StringTokenizer st = new StringTokenizer(str, ">:");
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
}
}
리턴값 | 메서드명 | 역할 |
---|---|---|
boolean | hasMoreTokens() | 남아있는 토큰 유무 |
String | nextToken() | 다음토큰 반환 |
String | nextToken(String delim) | delim 기준으로 다음 토큰 반환 |
boolean | hasMoreElements() | hasMoreTokens와 동일 |
Object | nextElement() | nextToken과 동일하나 객체 리턴 |
int | countTokens() | 토큰 수 리턴 |