mAndroid
mAndroid

Reputation: 5177

Split string into 2 strings based on a delimiter

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

Answers (3)

user11716837
user11716837

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

aioobe
aioobe

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

Maurice Perry
Maurice Perry

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

Related Questions