为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Java中转义转义字符

如何在Java中转义转义字符

PIPIONE 2021-05-07 19:26:58
我有一个包含\'的大文件,我需要找到它。我尝试了以下方法的变体,但无法正常工作:do{                  line =  TextFileIO.readLine(bufferedReader);                  if(line != null){           TextFileIO.writeLine(bufferedWriter,line);            for (int i = 0; i < line.length() - 1; i++){              if(line.substring(i,i+1).equals("\\\'"))System.out.println("we found it " + line);           }        }    }while (line != null);
查看完整描述

3 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

无需转义单引号!

单引号不需要转义,因为所有Java字符串都由双引号分隔。单引号分隔字符文字。因此,在字符文字中,您需要转义单引号,例如'\''

因此,您需要做的是"\\'",仅转义反斜杠。

substring(i,i+1)无法产生两个字符串。如果您尝试获取2个字符的字符串,则需要使用进行调用(i,i+2)

另外,您的for循环可以由调用代替contains

if(line.contains("\\'"))System.out.println("we found it " + line);


查看完整回答
反对 回复 2021-05-19
?
梵蒂冈之花

TA贡献1900条经验 获得超5个赞

要表示单个反斜杠后跟撇号,您可以使用

"\\'"

但是没有办法substring(i,i+1)可以等于两个字符的字符串。

也许你是说

if (line.substring(i, i+2).equals("\\'")) ...


查看完整回答
反对 回复 2021-05-19
?
牧羊人nacy

TA贡献1862条经验 获得超7个赞

\\\Java中的转义字符,因此我认为您的匹配字符串应为"\\"

附言:我不确定您要在这里实现什么,但是比您这里拥有的方法似乎更优雅,更“类似于Java”的方式来实现。


查看完整回答
反对 回复 2021-05-19
  • 3 回答
  • 0 关注
  • 275 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信