Reputation: 5177
Does anybody know if there is a solid library based method to achieve the following.
Say I have the string
"name1, name2, name3, name4"
and I want to parse it into 2 strings based on the comma delimiter.
I would like the strings to look like this:
string1 = "name1";
string2 = "name2, name3, name4";
Any ideas?
Upvotes: 14
Views: 57482
Reputation:
String s = "hello=goodmorning,2,1"
String[] str = s.split("="); //now str[0] is "hello" and str[1] is "goodmorning,2,1"
String str1 = str[0]; //hello
String[] str2 = str[1].split(","); //now str2[0] is "goodmorning" and str2[1] is "2,1"
Upvotes: -1
Reputation: 421090
you could use yourString.split(", ", 2)
.
String str = "name1, name2, name3, name4";
String[] parts = str.split(", ", 2);
String string1 = parts[0];
String string2 = parts[1];
System.out.println(string1); // prints name1
System.out.println(string2); // prints name2, name3, name4
You could also use yourString.indexOf(", ")
and yourString.substring(...)
.
Upvotes: 39
Reputation: 32831
Pattern pattern = Pattern.compile(", *");
Matcher matcher = pattern.matcher(inputString);
if (matcher.find()) {
string1 = inputString.substring(0, matcher.start());
string2 = inputString.substring(matcher.end());
}
Upvotes: 9