XSD中的RegEx java [重复]

问题描述 投票:0回答:2

我试图用XML验证XSDJava,但我有一些问题与regex

regex^\w+\.pdf$。这意味着,一个有效的pdf文件名(它必须以.pdf结尾)。我在https://regex101.com/上检查了它,它适用于“document.pdf”但不适用于document.pdffdocument.pdf,这意味着regex是正确的。

使用XSD验证Java的XML时,出现以下错误:

对于类型为'pdfDocumentType'的模式'^ \ w + .pdf $',值'document.pdf'不是facet-valid。

请帮忙吗?

提前致谢。

java xml xsd
2个回答
1
投票

0
投票

在这里你有我使用的代码:

    InputStream xmlIs = null;
    InputStream xsdIs = null;

    try {
        xmlIs = (new FileInputStream(xmlFile));
        xsdIs = (new FileInputStream(xsdFile));

        SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
        Schema schema = factory.newSchema(new StreamSource(xsdIs));
        Validator validator = schema.newValidator();
        validator.validate(new StreamSource(xmlIs));
    } catch ( Exception e ) {
        System.out.println(e.getMessage());
    }
© www.soinside.com 2019 - 2024. All rights reserved.