我尝试像这样分裂 -
tableData.split("\\"")
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
看起来你试图以逃避它的方式逃脱|它"\\|".但是|和之间的区别"是
| 是正则表达式引擎中的元字符(它代表OR运算符)" 是字符串文字中Java语言的元字符(它表示字符串的开头/结尾)要转义任何String元字符(例如"),您需要在其前面放置其他字符串元字符,负责转义为\1.因此,要创建的字符串,其中将包括"像this is "quote"你需要把它写成
String s = "this is \"quote\"";
// ^^ ^^ these represent " literal, not end of string
Run Code Online (Sandbox Code Playgroud)
如果我们想创建\文字(我们需要通过\在它之前放置另一个来逃避它),同样的想法被应用.例如,如果我们想要创建字符串表示,c:\foo\bar我们需要将其写为
String s = "c:\\foo\\bar";
// ^^ ^^ these will represent \ literal
Run Code Online (Sandbox Code Playgroud)
因此,如您所见\,用于转义元字符(使它们成为简单的文字).
这个字是用Java语言字符串使用,但它也是在正则表达式引擎用来逃跑的元字符:
\,^,$,.,|,?,*,+,(,),[,{.
如果你想创建匹配[字符的正则表达式,你需要使用正则表达式,\[但是在Java中表示这个正则表达式的字符串需要写成
String leftBracketRegex = "\\[";
// ^^ - Remember what was said earlier?
// To create \ literal in String we need to escape it
Run Code Online (Sandbox Code Playgroud)
所以拆就[我们就需要调用split("\\["),因为正则表达式表示[是\[需要被写成"\\["Java编写.
因为"在正则表达式中不是特殊字符,但它在String中是特殊的,我们需要通过将其写为字符串文字来转义它
split("\"");
Run Code Online (Sandbox Code Playgroud)
1)\还用于创建其他字符行分隔符\n,制表符\t.它也可以用于创建Unicode字符等\uXXXX,其中XXXX是字符的索引以Unicode表以十六进制形式.
| 归档时间: |
|
| 查看次数: |
10733 次 |
| 最近记录: |