什么是Java RegEx等效于“%A%B%”的SQL LIKE子句?
非常基本的问题,我只是在学习Java Regex风格。
答案 0 :(得分:10)
我认为这是明智的:.*A.*B.*
我将为特定的java调用编辑和添加更多内容。
编辑#1:
//simplest match
"".matches( ".*A.*B.*" );
String foo = "";
foo.matches( ".*A.*B.*" );
编辑#2:编辑#2:
来自API docs:
Pattern p = Pattern.compile(".*A.*B.*");
Matcher m = p.matcher("your-string-here");
boolean b = m.matches();
另外,我会看看RegexBuddy,它不是免费的,但它确实有能力生成许多语言的片段,测试和放大解析正则表达式等
答案 1 :(得分:0)
是“。?A。?B。” 如果您使用。没有?它匹配整个字符串,因为。 (点)表示“任何字符”,*表示0 - 无穷大时间。
答案 2 :(得分:0)
Pattern p = Pattern.compile(".*?A.*?B.*");
Matcher m = p.matcher(str);
if (m.matches()) {
...