String str = ":One;Two:Three;Four:Five;Six:Seven;"
如何获得
str[1]="One"
str[2]="Three"
str[3]="Five"
str[4]="Seven"
答案 0 :(得分:4)
你可以这样做:
String [] tokens = str.replaceAll(";\\w*:?",":").split(":");
第一部分删除了你不需要的词(二,四......)第二部分将其余部分分开。请注意,根据您的规范,结果中的第一项(tokes[0]
]为空。
示例:
public static void main(String[] args) {
String str = ":One;Two:Three;Four:Five;Six:Seven;";
String [] tokens = str.replaceAll(";\\w*:?",":").split(":");
for (int i = 0; i < tokens.length; i++) {
System.out.println("token[" + i + "] = " + tokens[i]);
}
}
打印
token[0] =
token[1] = One
token[2] = Three
token[3] = Five
token[4] = Seven
答案 1 :(得分:4)
希望这会对你有所帮助
String str = ":One;Two:Three;Four:Five;Six:Seven;"
str=str.replace(":",",");
str=str.replace(";",",");
String [] tokens = str.split(",");
token[1]="one";
token[3]="three";
token[5]="five";
token[7]="seven";
答案 2 :(得分:1)
一种可能的解决方案是:
str1=str.split(":");
之后,对于数组str1的每个成员:
str1[x].split(";");
答案 3 :(得分:1)
构造表单的正则表达式
first|second|third
然后使用String的split()方法通过任何分隔符拆分文本。
所以使用
String [] tokens = str.split(":|;");
答案 4 :(得分:0)
使用
将其放入数组中str.split(";");
像这样:
String str = ":One;Two:Three;Four:Five;Six:Seven;";
String[] foo = str.split(";");
答案 5 :(得分:-1)
你无法得到你想要的东西。
str
定义为string
,您希望它为array
。
您需要使用另一个变量来获得结果。使用str.split(":|;")
功能并将结果存储在String[] result
String[] result = str.split(":|;");