将多个模式添加到schemainclusionrule模式爬网程序

时间:2012-09-14 06:25:51

标签: java hibernate java-ee schemacrawler

我必须使用schemacrawler添加要抓取的选定模式。我们如何将多个模式添加到schemacrawler的包含规则中?

喜欢:

final SchemaCrawlerOptions options = new SchemaCrawlerOptions();
options.setSchemaInclusionRule(new InclusionRule("schema1,schema2", InclusionRule.NONE));

1 个答案:

答案 0 :(得分:1)

InclusionRule接受正则表达式模式。您可以传递java.util.regex.Pattern实例或String,在后一种情况下,它将为您编译。如果我没有弄错的话,您可以使用|符号来模式匹配多个选项。例如,"schema1|schema2"

您可以使用简单的程序测试您的模式; e.g。

import java.util.regex.Pattern;

public class PatternTest {
    public static void main(String[] args) {
        Pattern p = Pattern.compile("schema1|schema2");
        System.out.println(p.matcher("schema0").matches());
        System.out.println(p.matcher("schema1").matches());
        System.out.println(p.matcher("schema2").matches());
        System.out.println(p.matcher("schema3").matches());
    }
}

..打印:

false
true
true
false