I have a text file which contains lot of permutations and combinations of special characters, white space and data.
I am storing the content of this file into an array list, and if i am not using useDelimiter()
function, Java is reading my text perfectly.
The only issue is that its not accepting comma (,
) and dot (.
) as delimiter.
I know I can use input.useDelimiter(",|.| |\n")
to use comma , dot, space as delimiter and others options as well, but then the results I get are not correct as java gives me now.
Is there a way to instruct java to use comma and dot as delimiters along with whatever default delimiter it uses?
Thanks in advance for your help :)
Regards, Rahul
Use escaped character like this:
The default delimiter for Scanner is defined as the pattern
\p{javaWhitespace}+
, so if you want to also treat comma and dot as a delimiter, tryinput.useDelimiter("(\\p{javaWhitespace}|\\.|,)+");
Note you need to escape dot, as that is a special character in regular expressions.
You could do this:
Basically the .split() method will split the string according to (in this case) delimiter you are passing and will return an array of strings.
However, you seem to be after a List of Strings rather than an array, so the array must be turned into a list by using the Arrays.asList() utility. Just as an FYI you could also do something like so: