如何拆分包含任何空格字符作为分隔符的字符串
2022-08-31 04:16:32
需要传递到什么正则表达式模式才能使用所有空格字符(,,,等)作为分隔符将字符串拆分为子字符串数组?java.lang.String.split()
' '
'\t'
'\n'
需要传递到什么正则表达式模式才能使用所有空格字符(,,,等)作为分隔符将字符串拆分为子字符串数组?java.lang.String.split()
' '
'\t'
'\n'
一些东西在行
myString.split("\\s+");
这会将所有空格分组为分隔符。
所以如果我有字符串:
"Hello[space character][tab character]World"
这应该产生字符串和,并省略 和 之间的空格。"Hello"
"World"
[space]
[tab]
正如VonC所指出的,反斜杠应该被转义,因为Java会首先尝试将字符串转义为特殊字符,然后将其发送以进行解析。你想要的是文字,这意味着,你需要通过。它可能会有点令人困惑。"\s"
"\\s"
等效于 。\\s
[ \\t\\n\\x0B\\f\\r]
在大多数正则表达式方言中,有一组方便的字符摘要可用于这种事情 - 这些是要记住的好字符摘要:
\w
- 匹配任何单词字符。
\W
- 匹配任何非单词字符。
\s
- 匹配任何空格字符。
\S
- 匹配除空格字符以外的任何内容。
\d
- 匹配任何数字。
\D
- 匹配除数字以外的任何内容。
搜索“正则表达式备忘单”应该会奖励你很多有用的摘要。