2012-03-07 16 views
1

Я хочу отформатировать одну строку «Событие»Анализ и разбиение строки

Когда я печатаю его. это дает мне результат:

When : Wed 18 Apr 2012 04:30 to Wed 18 Apr 2012 06:30 

Who: [email protected] 

Event status : Confirmed. 

Он дает ответы в этой категории 3.

Who,when and Event Status.

Но я хочу, чтобы эти три результата в отдельной строке .Как форматировать эти строки, так что я буду получать его отдельно

+0

Можете ли вы показать коды? –

+0

вы можете объяснить бит больше ??? –

ответ

4

String[] parts = resultString.split("\n+");

Это разделит вашу строку, входит (\n+ означает один или более новый линия символ) и хранить части в parts массиве

+2

Возможно, вы хотели '' \ n + "', '*' означать 0 или более символов, а '+' - 1 или больше. – amit

+0

Да: D thanks @amit – shift66

+1

Вы можете контактировать по частям и проверить, какая строка использует startWith (String prefix) метод string. например, вы можете проверить, является ли часть firsrt частью 'When':' for (String part: parts) {if (part.startsWith («When»)) {сделать что-то для When}} ' – shift66

0

Если одиночные символы новой строки между ними 3 линии затем использовать этот:

String splitLine[] = String.split("\\r?\\n");

0

Разделите контент на основе \r\n, который рассматривается как новая строка.

0

Если я хорошо понимаю, у вас есть в качестве входных данных строку:

When : Wed 18 Apr 2012 04:30 to Wed 18 Apr 2012 06:30 

Who: [email protected] 

Event status : Confirmed. 

И вы хотите получить как выходные три строки (или массив строк), содержащих соответственно:

whenString="Wed 18 Apr 2012 04:30 to Wed 18 Apr 2012 06:30" 
whoString="[email protected]" 
eventString="Confirmed." 

Если это так, то

String[] lines = source.split("\n+"); 

int index = lines[0].indexOf("When"); 
String whenString = lines[0].substring(index+7); 

index = lines[1].indexOf("Who"); 
String whoString = lines[1].substring(index+5); 

index = lines[2].indexOf("Event status"); 
String whoString = lines[2].substring(index+15); 
Смежные вопросы