Split a string in android
扫描后我有一个字符串二维码是"mat:to:my address email;sub:my title;body:my content;;"。如何从字符串中拆分地址电子邮件、标题和内容?谢谢大家!
- 你试过分开吗?
- stackoverflow.com/questions/32515417/…
- 我试过了,但它不起作用。string s="mat:to:[email protected],[email protected];sub:example;body:this is a string;;"stringTokenizer s t=new stringTokenizer(s,"mat:to;subbody");while(st.hasmoreTokens())system.out.println(st.nexttoken());
- 你能说出你想要的确切结果吗?
- 我想输出的是[email protected]示例-这是一个字符串
- 接受正确答案有助于其他人解决问题
1 2 3 4 5 6 7 8 9 10 11
| 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()); |
尝试使用split()方法。
如果要按";"拆分
1
| String[] arrayString = string. split(";"); |
在你的情况下,你会得到
1
| ["MAT:TO:My address email","SUB:My title","BODY:My content"] |
然后用":"或另一种方式进行拆分,以更适合您的方式为准。
1 2 3
| String email = arrayString [0]. split(":")[2];
String title = arrayString [1]. split(":")[1];
String body = arrayString [2]. split(":")[1]; |
这是一种不好的方法,不太安全。
或者你可以使用string.substring(int startIndex, int endIndex)。
- 你能给我举个例子吗?因为我从Java开始。谢谢您!
- 添加了相关代码。
- 那太好了!非常感谢你!
- string string="mail:to:my email address,sub:my title,body:my content";string[]parts=string.split(":");string mail=parts[0];string to=parts[1];string part3=parts[2];string[]array=part3.split(",");string email address=array[0];string subjectTitle=array[0];string part4=parts[3];string[]array2=part4.split(",");string subject=array[0];string bodytitle=array[1];string body=parts[4];