虽然逃避特殊字符,Android String.Contains(“\\ ^”)仍无法正常工作?

时间:2015-02-14 06:35:59

标签: android string

我试图通过这样做来检查String是否包含Caret Character:

if (text.contains("\\^")) {
    break;
}

这似乎根本不起作用,尽管事实上我已经正确地使用了几个堆栈溢出答案中指定的转义字符,并且文本包含了Caret字符。

我做错了什么或有什么选择? 谢谢。

2 个答案:

答案 0 :(得分:3)

你不必逃避^“”

text.contains("\\^")的含义是它实际上是在文本中寻找\\ ^。

所以它会匹配像hii \\ ^,hell \\ ^

这样的字符串

为了匹配文本中的^,只需编写text.contains("^") 它将匹配包含^的所有字符串 例如:hii ^,你好^

示例编程

class Regex2
{
        public static void main(String args[])
        {
                String text = "hiiihow^";
                if(text.contains("^"))
                {
                        System.out.println("Yes");
                }
                else
                {
                        System.out.println("no");
                }
        }
}

输出: 是

答案 1 :(得分:2)

你为什么要逃跑?请参阅:https://ideone.com/tpA9Dx

import java.util.*;
import java.lang.*;
import java.io.*;

/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
    public static void main (String[] args) throws java.lang.Exception
    {
        if ("^".contains("^")) {
            System.out.println("YES");
        }
    }
}

输出:

  

成功时间:0.1记忆:320256信号:0是

只需使用:text.contains("^")

相关问题