Java 如何在多个分隔符上分隔字符串?
我有一个字符串Java 如何在多个分隔符上分隔字符串?,java,string,divide,Java,String,Divide,我有一个字符串“1000:20003000”,我需要将它分成3个字符串,如下所示: "1000" "2000" "3000" 我的代码如下所示: int datas = 0; String item = ""; String data = ""; String pocet = ""; List<String> items = "1000:2000,3000"; for (int ii = 0; ii < items.size(); ii++) { System.o
“1000:20003000”
,我需要将它分成3个字符串,如下所示:
"1000"
"2000"
"3000"
我的代码如下所示:
int datas = 0;
String item = "";
String data = "";
String pocet = "";
List<String> items = "1000:2000,3000";
for (int ii = 0; ii < items.size(); ii++) {
System.out.println(items.get(ii));
int delkaid = items.get(ii).indexOf(":");
int delkadat = items.get(ii).indexOf(",") - items.get(ii).indexOf(":");
int delkapoctu = items.get(ii).length() - items.get(ii).indexOf(",");
for (int ite = 0; ite < delkaid; i++) {
item = item + items.get(ii).charAt(ite) + "";
}
for (int ite = 0; ite < delkadat; i++) {
data = data + items.get(ii).charAt(items.get(ii).indexOf(":") + 1 + ite) + "";
}
for (int ite = 0; ite < delkapoctu; i++) {
pocet = pocet + items.get(ii).charAt(items.get(ii).indexOf(",") + 1 + ite) + "";
}
datas = Integer.valueOf(data);
}
int-datas=0;
字符串项=”;
字符串数据=”;
字符串pocet=“”;
列表项=“1000:20003000”;
对于(int ii=0;ii
但是我在代码中有一些错误。由于在
列表中分配了字符串,您的代码无法编译,但是您可以在
可以使用大小相等的对应整数数组来保存整数值。这些可以在基本的for
循环中处理
输出
1000
2000
3000
您可以使用以下方法:
这将拆分任何分隔符上的数字
String numbers[] = line.split("\\D+");
您可以使用String.split(“:”)代码>您不需要任何代码来完成此任务。String[]parts=String.split(“:”);为了完整性,您实际上需要(a)将其拆分两次,或者(b)在正则表达式上拆分。这就是Java的String.split
所做的,例如,:|,
哇,有那么多人不能阅读理解!答案不是.split(“:”)代码>再次阅读问题要求@Jarroderson一世至少在问题重新格式化之前回答了这个问题,而且很难看出标点符号的区别。
1000
2000
3000
String[] tokens = str.split(":|,");
String numbers[] = line.split("\\D+");