2015-09-11 3 views
-8

У меня есть строка после сканирования QR-код «MAT: TO: Мой адрес электронной почты; SUB: My title; BODY: My content ;;". Как разделить адрес электронной почты, ваш заголовок и ваш контент из этой строки? Спасибо всем!Сплит строка в android

+0

Вы попробовали расщепление? – Rustam

+0

http://stackoverflow.com/questions/32515417/how-do-i-split-the-string-of-url-link/32515547#32515547 – Nithinlal

+0

Я пробовал, но он не работает Строка s = "MAT: TO: [email protected], [email protected]; SUB: Пример; BODY: Это строка ;; "; \t \t StringTokenizer st = new StringTokenizer (s, "MAT: TO; SUBBODY"); \t \t while (st.hasMoreTokens()) { \t \t System.out.println (st.nextToken()); \t \t} –

ответ

1
String s = "MAT:TO:My address email;SUB:My title;BODY:My content;;"; 

    String[] arrayString = s.split(";"); 

    String email = arrayString[0]; 
    String title = arrayString[1]; 
    String body = arrayString[2]; 

    email= email.substring(email.indexOf("MAT:TO:") + 7, email.length()); 
    title= title.substring(title.indexOf("SUB:") + 4, title.length()); 
    body= body.substring(body.indexOf("BODY:") + 5, body.length()); 
+0

Я очень ценю вашу помощь в моем проекте! –

1

Пробуйте использовать метод split().

Если вы хотите разделить на ";"

String[] arrayString = string.split(";"); 

В вашем случае вы получите

["MAT:TO:My address email", "SUB:My title", "BODY:My content"] 

, а затем разделить на ":" или другим способом вокруг, в зависимости от того, что вам лучше подходит.

String email = arrayString[0].split(":")[2]; 
String title = arrayString[1].split(":")[1]; 
String body = arrayString[2].split(":")[1]; 

Это плохой способ сделать это, не очень безопасно.

Или вы могли бы использовать string.substring(int startIndex, int endIndex).

+0

Можете ли вы привести мне пример? потому что я начинаю с java. Спасибо! –

+0

Добавлен код revelant. – Marko

+0

Отлично! Большое спасибо! –