一个名为item_list的MySQL表有一个名为description的字段,问题是前一个程序员在一个名为description的字段中组合了该项的名称和描述。现在数据为20k +。现在我将在迁移期间遇到问题。那么我该如何分开一个
String description="BEARING, ROLLER 23230CKE4 SPHERICAL"
分为两个新字符串
String name="BEARING"
String description="ROLLER 23230CKE4 SPHERICAL"
任何帮助将不胜感激。
答案 0 :(得分:0)
你可以这样试试
String description="BEARING, ROLLER 23230CKE4 SPHERICAL";
String [] arr=description.split(",");
System.out.println(arr[0]);
System.out.println(arr[1]);
<强>输出强>
BEARING
ROLLER 23230CKE4 SPHERICAL
String Split方法返回一个字符串数组。在String描述中有一个逗号(,)所以整个字符串将被拆分为2个字符串。
答案 1 :(得分:0)
您可以使用StringTokenizer
类似这样的事情
StringTokenizer st = new StringTokenizer(description,",");
String name=st.nextToken();
description=st.nextToken();
答案 2 :(得分:0)
如果组合字符串中有多个,
,字符串拆分函数将无法正常工作。
我建议你只拆分第一个,
。
int idx = description.indexOf(',');
if (idx != -1) { // if there is a comma
name = description.substring(0, idx);
description = description.substring(idx+1);
} else {
???? // no comma in description
}
答案 3 :(得分:0)
所有答案的组合..,解决问题。
String name="",new_d ="";
String description="BEARING, ROLLER 23230CKE4 SPHERICAL";
int idx = description.indexOf(',');
if (idx != -1) { // if there is comma
String arr[]=description.split(",\\s*");
name=arr[0].toString();
new_d=arr[1].toString();
}
else {
// if there is no comma
name=description;
new_d="";
}
System.out.println(name);
System.out.println(new_d);