为什么这不起作用?
"hello[world".split("\[")
Run Code Online (Sandbox Code Playgroud)
这样做:
"hello[world".split("\\[")
Run Code Online (Sandbox Code Playgroud)
这实际上是在不同上下文中的两个转义,因为参数是表示为字符串的正则表达式.
该[来转义,否则它会在正则表达式特殊的意义.正则表达式的转义会成功\[.但是\必须进行转义,因为它在字符串中具有特殊含义(用于转义和通过数值表示字符).
它可能更糟糕,因为\角色在两种情况下都用于逃避.如果你想按\字符分割,你必须\\为正则表达式用法转义它(),但是你有两个\字符,它们都必须在字符串上下文中转义.如果您将其作为常量编写,则您要拆分的原始字符串中的用法也需要转义,因此类似的拆分看起来像:
"hello\\world".split("\\\\")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3491 次 |
| 最近记录: |