I have the following:
String string = \"1-50 of 500+\";
String[] stringArray = string.split(\" \");
Printing out all the elements in this
Your Program is correct but you put two space after 1-50
. So Its giving you that output. Remove one space and you are done. No need to change the code. But if there is a two space then you should use string.split("\\s+")
To fix the space problem, after splitting, you can use .trim()
to remove the white space.
Something like this should work.
for(int x=0; x<stringArray.length(); x++){
stringArray[x] = stringArray[x].trim();
}
Use \\s+
to split on spaces even if they are more.
String string = "1-50 of 500+";
String[] stringArray = string.split("\\s+");
for (String str : stringArray)
{
System.out.println(str);
}
Full example: http://ideone.com/CFVr6N
EDIT:
If you also want to split on tabs, change the regex to \\s+|\\t+
and it detects both spaces and tabs as well.
Use this to spilt the String.
String[] stringArray = string.split("\\s+");
String[] stringArray = string.split(" +");
instead of
String[] stringArray = string.split(" ");
You can split using regex
string.split("\\s+");