将一个字符串与','字符分隔为两个新字符串

时间:2013-09-23 07:49:26

标签: java mysql

一个名为item_list的MySQL表有一个名为description的字段,问题是前一个程序员在一个名为description的字段中组合了该项的名称和描述。现在数据为20k +。现在我将在迁移期间遇到问题。那么我该如何分开一个

String description="BEARING, ROLLER 23230CKE4 SPHERICAL"  

分为两个新字符串

String name="BEARING" 
String description="ROLLER 23230CKE4 SPHERICAL"

任何帮助将不胜感激。

4 个答案:

答案 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);