我实际上试图在以下任何一个上分割字符串:
这是我正在使用的正则表达式,它提供了无效的转义字符'错误:
String delims = "[\\\\\|\\/\\n,]+";
String[] list1 = str1.split(delims);
我已经尝试了几个版本,试图获得正确的数量。什么是正确的方法?
答案 0 :(得分:1)
"[/\\|\n,\\\\]+"
其中一些你需要双重逃避
/ matches /
\\| matches |
\n matches new line
, matches ,
\\\\ matches \
答案 1 :(得分:1)
要在regex引擎中创建\
字面值,您需要在字符串中使用四个\
来编写它,因此您有一个\
额外
"[\\\\\|\\/\\n,]+";
1234^
here
此外,您不需要在Java正则表达式引擎中转义/
,也不需要将\n
作为\\n
传递(\n
字面值也是接受)你可以试试
String delims = "[\\\\|/\n,]+";