java - Java中如何转义转义字符

标签 java string equals

我有一个大文件,其中包含我需要查找的\'。我已经尝试了以下变体,但它不起作用:

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);

最佳答案

无需转义单引号!

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

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

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

此外,您的 for 循环可以替换为对 contains 的调用。

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

关于java - Java中如何转义转义字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51225151/

相关文章:

ruby - 有没有办法避免写==,eql?和 Ruby 中的哈希方法(模板类?)

java - 无法加载图片 - 找不到图片

java - C3P0Registry mbean 未向 MBeanServer 注册。获取 InstanceNotFoundException

C中的char指针初始化

c# - 如何在忽略定界符的情况下拆分字符串?

Java:匹配具有未知字符的字符串的算法

java - 适用于 Android 的 Xerces

java - CSV 到 RDD 到 Apache Spark 中的 Cassandra 存储

java - equals 不可能上课?

R - 获取两个矩阵具有相同行的行号