Str.lastIndexOf("\")给出错误

Yas*_*shu 0 java string

我想从我的字符串中删除最后一次出现的"\"这个特殊字符.我尝试使用字符串函数

String word = str.substring(str.lastIndexOf("\"));
Run Code Online (Sandbox Code Playgroud)

但每次我收到一个错误,要求提出额外的报价.与此同时,我发现("\"")用来传递"这个特殊的角色.我该怎么办?

Ita*_*rG3 10

你需要使用

String word = str.substring(str.lastIndexOf("\\"));
Run Code Online (Sandbox Code Playgroud)

\字符串中的字符转义特殊字符(",',\等等).因此,\在它们之前使用它会使它成为文字,这意味着java会将它后面的内容视为常规字符.

你可以测试看看是什么

System.out.println("\\"); 
Run Code Online (Sandbox Code Playgroud)

会打印.它会打印出来\.

所以:

System.out.println("\" "); //would print one like this: "
System.out.println("\' "); //would print one like this: '
Run Code Online (Sandbox Code Playgroud)

等等.