我有String
喜欢:
String s = "IPhone 5s $400"
我想得到的是:
String s1 = "IPhone 5s";
String s2 = "$400";
我尝试的是获取String
的最后一个字,并检查它是否以"&#"
开头,如果是,请将其从String
中取出并将其设为UTF-8。
但价格有可能不在String
的末尾。
此外,所有货币符号都以"$#"
开头吗?
答案 0 :(得分:0)
在&#
之前拆分:
String s = "IPhone 5s $400"
String[] splitArray = subjectString.split("(?=&#)");
之后,在该数组中的字符串上调用StringEscapeUtils.unescapeHtml4
以正确解码符号。如果只有一个这样的符号(如你的情况):
splitArray[1] = StringEscapeUtils.unescapeHtml4(splitArray[1]);
答案 1 :(得分:0)
你可以使用StringEscapeUtils
或标准的libs和regex,然后拆分字符串。
import java.io.*;
class Test{
public static void main(String args[]){
String p = new String("IPhone 5s $400");
String r = p.replaceAll("($)","\\|\\$");
String[] s = r.split("\\|");
System.out.println(s[0]); // IPhone 5s
System.out.println(s[1]); // $400
}
}
示例:
<强> http://ideone.com/epttX4 强>