Removing whitespace from strings in Java
2021-6-3 anglehua
I have a string like this:
mysz = "name=john age=13 year=2001";
I want to remove the whitespaces in the string. I tried trim()
but this removes only whitespaces before and after the whole string. I also tried replaceAll("\\W", "")
but then the =
also gets removed.
How can I achieve a string with:
mysz2 = "name=johnage=13year=2001"
st.replaceAll("\\s+","")
removes all whitespaces and non-visible characters (e.g., tab, \n
).
st.replaceAll("\\s+","")
and st.replaceAll("\\s","")
produce the same result.
The second regex is 20% faster than the first one, but as the number consecutive spaces increases, the first one performs better than the second one.
Assign the value to a variable, if not used directly:
st = st.replaceAll("\\s+","")
replaceAll("\\s","")
\w
= Anything that is a word character
\W
= Anything that isn't a word character (including punctuation etc)
\s
= Anything that is a space character (including space, tab characters etc)
\S
= Anything that isn't a space character (including both letters and numbers, as well as punctuation etc)
(Edit: As pointed out, you need to escape the backslash if you want \s
to reach the regex engine, resulting in \\s
.)
采集自互联网,如有侵权请联系本人