2013-10-28 3 views
1

XML 요소 기반 구분 기호 |을 분할합니다. XML 요소의 형식은 다음과 같습니다.구분 기호를 사용하여 내용 분할

start:23 | stop:43 | name:abc def 

나는 다음과 같은 방법으로

StringTokenizer stringTokenizer = new StringTokenizer(oneLine, " | "); 
// First line is "start" 
if (stringTokenizer.hasMoreTokens()) { 
    String tmp = stringTokenizer.nextToken(); 
    if (tmp.startsWith("start:")) { 
    tmp = tmp.substring("start:".length()); 
     // ---- 

에서 일을 오전하지만 문제는 내가 마지막 하위 요소 name:abc def을 얻을 수 없습니다 생각합니다. 만 검색 할 수 있지만 def은 검색 할 수 없습니다.

+0

작은 편집을하면 코드가 [SSCCE] (http://sscce.org)가되어 모든 사람에게 도움이됩니다. –

답변

3

사용 String.split()는 :

String[] parts = split("\\s*\\|\\s*"); 

이 길이는 세 가지의 배열이 발생합니다.

+0

결과를 잘랐는지 확인하십시오 – tom

+1

'oneLine.split ("\\ s * \\ | \\ s *"); ' –

+0

감사합니다. 완료되었습니다. –

1

(" | ")에 공백을 넣지 마십시오. 바로이 ("|")가 작동합니다.

+4

[이유] (http://docs.oracle.com/javase/7/docs/api/java/util/StringTokenizer.html#StringTokenizer%28java.lang.String,%20java.lang.String%29) : _ delim 인수의 문자는 토큰 분리를위한 구분 기호입니다 ._ –

관련 문제