Java 检查字符串是否包含反斜杠?

Java 检查字符串是否包含反斜杠?,java,string,backslash,Java,String,Backslash,在Java中,\'表示单引号(单引号)字符,\“表示双引号(双引号)字符 所以,String s=“我是一个人。”;效果很好 但是,String s=“我是人。”也不会出现任何编译错误 同样地,charc='\'可以工作,但是charc='”;也可以工作 但我需要检测字符串是否包含反斜杠: “abcd'”不包含反斜杠 “abcd\”包含反斜杠 我需要区分字符串是否包含反斜杠。您不能。之所以称为转义序列是有原因的。例如,\n一旦放入字符串,就无法将文本\与自身匹配。它已消失。剩下的只是一行新行 i

在Java中,
\'
表示单引号(单引号)字符,
\“
表示双引号(双引号)字符

所以,
String s=“我是一个人。”;
效果很好

但是,
String s=“我是人。”
也不会出现任何编译错误

同样地,
charc='\'
可以工作,但是
charc='”;
也可以工作

但我需要检测字符串是否包含反斜杠:

  • “abcd'”
    不包含反斜杠
  • “abcd\”
    包含反斜杠

  • 我需要区分字符串是否包含反斜杠。

    您不能。之所以称为转义序列是有原因的。例如,
    \n
    一旦放入字符串,就无法将文本
    \
    与自身匹配。它已消失。剩下的只是一行新行

    if(string.contains("\\")){
    //TODO do your code here
    }
    
    请记住
    \
    用于转义字符。它本身不属于字符串的一部分

    但是,您可以通过执行以下简单操作来检查文本
    \

    String s = "abcd\\";
    System.out.println(s.contains("\\"));
    

    \在Java中用作转义序列

    如果要在字符串中打印反斜杠,只需打印
    “abcd\\”

    举个例子,它是:

    boolean containsBs = "abcd\\".contains("\\");
    
    “abcd\”
    在java中不是有效字符串。 在这里,java将
    \“
    视为转义序列字符(
    )。因此,如果要在字符串中添加反斜杠,则需要将
    \
    与转义序列字符一起使用

    字符串
    “abcd\'”
    未包含反斜杠字符。它具有转义序列字符
    \'

    中的转义字符(也称为转义序列或转义码) “常规”用于表示序列的替代解释 在Java中,前面带有反斜杠(
    \
    )的字符是 转义序列和对java编译器具有特殊意义

    当在print语句中遇到转义序列时 编译器相应地解释它 引号中的引号您必须在 内部引用。打印句子:
    她对我说了声“你好”。
    你呢 应写:

    System.out.println("She said \"Hello!\" to me.");
    

    使用字符串时,不需要对单引号使用转义字符(反斜杠)。同样,在使用char时,不需要转义双引号

    字符串使用双引号,而字符使用单引号。对于字符串中的双引号和字符中的简单引号,需要使用转义字符

    如果要确定字符串是否包含反斜杠

    String ex="abcd";
    String ex2="abcd\\";
    ex.contains("\\"); //false
    ex.contains("\\"); //true 
    
    第一个反斜杠用于转义,第二个是字符


    你想解决什么问题?一旦它是Java字符串,反斜杠就消失了;这只是为了Java的缘故。
    str.indexOf(“\\”)
    ?“abcd\”-如果这是Java的字符串,在示例中不包含反斜杠,反斜杠用于转义下一个字符;但它不会是
    字符串的一部分。现在,我需要检查这个输入字符串是否包含反斜杠?但问题是,如果我将字符串设为“abcd \\qwert”,则无法检测反斜杠的存在。因此,我想知道是否有任何方法可以检测反斜杠的存在?
    包含调用
    indexOf
    因此,
    indexOf
    将是最佳选择。@GeomanYabes不,这不是一个更好的选择:不应该牺牲可读性。
    String ex="I'm an example";
    String ex2="My name is \"example\"";
    char c='"';
    char c2='\'';
    
    String ex="abcd";
    String ex2="abcd\\";
    ex.contains("\\"); //false
    ex.contains("\\"); //true