I have a string like this.
PER*IP**TE**1234567890*EM*sampleEmail@Email.com
How can I parse the string into multiple lines like this in Java?
PER
IP
TE
//Empty String
EM
1234567890
sampleEmail@Email.com
I have a string like this.
PER*IP**TE**1234567890*EM*sampleEmail@Email.com
How can I parse the string into multiple lines like this in Java?
PER
IP
TE
//Empty String
EM
1234567890
sampleEmail@Email.com
You could use a regex replacement:
String input = "PER*IP**TE*1234567890*EM*sampleEmail@Email.com";
String output = input.replaceAll("\\*", "\n");
System.out.println(output);
This prints:
PER
IP
TE
1234567890
EM
sampleEmail@Email.com
String newstring = string.replace("*", "\n");
System.out.println(newstring);
now if you don't want that the empty line show up, use this:
String string = "PER*IP**TE**1234567890*EM*sampleEmail@Email.com"
String newstring = string.replaceAll("\\*+","*").replace("*", "\n");
System.out.println(newstring);
You can use String#split
. Since *
is a regular expression metacharacter, you need to escape it with a backslash or use Pattern#quote
.
Arrays.stream("PER*IP**TE**1234567890*EM*sampleEmail@Email.com".split(Pattern.quote("*")))
.forEach(System.out::println);