什么正则表达式模式需要我传递给 java.lang.String.split()拆分成字符串使用的所有空格字符(子字符串数组' ','\t','\n',等)作为分隔符?
java.lang.String.split()
' ','\t','\n'
某些东西
myString.split("\\s+");
这会将所有空白分组为分隔符。
因此,如果我有字符串:
"Hello[space][tab]World"
这将产生字符串"Hello","World"并省略[space]和之间的空白[tab]。
"Hello","World"
[space]
[tab]
正如VonC指出的那样,应该转义反斜杠,因为Java首先会尝试将字符串转义为特殊字符,然后将其发送给解析。你想要的是字面量"\s",这意味着你需要通过"\\s"。可能会造成一些混乱。
"\s"
"\\s"
在\\s相当于[ \\t\\n\\x0B\\f\\r]。
\\s
[ \\t\\n\\x0B\\f\\r]