2013-05-26 1 views
1

Я пытаюсь написать код, который разделит строку из текстового файла на эти символы «<» или «>». Я пробовал сплит с StringTokenizer с теми, что были delemiters, но он по-прежнему расщепляется на пробелы. Я также использовал line = file.split("(<|>)");Как разбить a на строку не на пробел

Оба разделены на пробелы, и мне это не нужно.

+1

пример будет более полезным для понимания – stinepike

+1

Я думаю, ваш (внутри цитаты «(<|>» вызывает проблему – Mingyu

+0

я забыл ввести), когда я напечатал это здесь – wolfcall

ответ

0

Попробуйте

public static void main(String[] args) 
    { 
    String s = "123 4545>abc5 >4545454 45454 45 44555< 454545"; 
    String[] tokens = s.split("<|>"); 
    for(String t : tokens) 
     System.out.println(t); 
    } 

Выходной:

123 4545 
abc5 
4545454 45454 45 44555 
454545 
+0

моя проблема была моя файл не мой раскол ... Теперь я чувствую себя глупо. -.- ' – wolfcall

+1

Теперь я чувствую себя глупо ... Я использовал 'file.next()' not 'file.nextLine()' – wolfcall

0

Попробуйте

String[] split= file.split("[\\<?\\>?]"); 

Скобки ([]) обозначают выбор между символами. (?)

Вопросительный знак обозначает мощность - 0 или 1

0

Я просто попытался, он отлично работает.

String x = "afa f<afaf>a fa<af"; 
for (String s : x.split("<|>")) { 
    System.out.println(s); 
} 

Выход:.

afa f 
afaf 
a fa 
af 

Возможно потому, что в вашем коде, вы должны "(< |>" не "< |>"