什么是Java RegEx等效于“%A%B%”的SQL LIKE子句?

时间:2010-11-19 22:17:20

标签: java regex

什么是Java RegEx等效于“%A%B%”的SQL LIKE子句?

非常基本的问题,我只是在学习Java Regex风格。

3 个答案:

答案 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()) {
...