Java 如何使用正则表达式模式匹配
在SQL中,我们可以使用like关键字进行搜索。 前, 这些单词可以通过查询来检索:Java 如何使用正则表达式模式匹配,java,regex,Java,Regex,在SQL中,我们可以使用like关键字进行搜索。 前, 这些单词可以通过查询来检索:比如'p_tt%' 如何在java中执行相同的过程。您可以这样做: String str1 = "MyString lalaa"; String str2 = "P_tt other string lala"; String pattern = "P_tt\\.*"; boolean isInStr1 = str1.matches(pattern); // return false boolean isInStr
比如'p_tt%'
如何在java中执行相同的过程。您可以这样做:
String str1 = "MyString lalaa";
String str2 = "P_tt other string lala";
String pattern = "P_tt\\.*";
boolean isInStr1 = str1.matches(pattern); // return false
boolean isInStr2 = str2.matches(pattern); // return true
但请记住,
LIKE
不会按regexp模式进行搜索。在Java中,可以使用简单的regexp模式。在我的示例中,我建议使用“putt.*
”,这意味着“putt
”—您的常量单词和“\.
”—任何字符(包括空格、制表符和其他字符),*
是平均迭代量<代码>*-零或更多。您可以使用java.util.regex.Pattern。
例如:
在您的情况下,它将是:
Pattern p = Pattern.compile("P_tt\\.*");
Matcher m = p.matcher("aaaaab");
boolean b = m.matches();
有关更多信息,请访问Java文档:
发布您尝试了什么如果我的回答对您有帮助,您能接受吗?或者请说我应该更正什么。
List tList=newarraylist(Arrays.asList(newstring[]{“Putty”、“Pattern”、“Pety”、“PPP”、“satt”);模式p=Pattern.compile(“p_tt\\\.*);对于(String str:tList){Matcher m=p.Matcher(str);boolean b=m.matches();log.info(“str>>”+str+“b>>”+b);}
@Michal-我已经试过了。它只返回false。我的测试方法正确吗?
Pattern p = Pattern.compile("a*b");
Matcher m = p.matcher("aaaaab");
boolean b = m.matches();
Pattern p = Pattern.compile("P_tt\\.*");
Matcher m = p.matcher("aaaaab");
boolean b = m.matches();