当我尝试针对Java中的XSD验证XML文件时(请参阅此示例),XSD文件中给出的正则表达式与java中的正则表达式之间存在一些不兼容性.
如果有一个像"[ab-]"
XSD中的正则表达式(意思是任何字符"a","b"或" - ",则java会抱怨表达式中存在语法错误.
这是自2005年3月28日以来的已知错误,请参阅Sun bug数据库.
我该怎么做才能解决这个错误?到目前为止,我尝试通过替换"[ab-]"
by 来"纠正"XSD文件"[ab\-]"
,但有时这不是一个选项.
如果你也遇到这个bug的问题,请在Sun bug数据库中投票!
由于错误已经提交,我建议您尝试不同的 XML 架构处理器。你对此无能为力。
如果您可以预处理 XSD 进入的流,那么您可以创建一个解析器,它理解基本的正则表达式结构,并可以修复任何看起来像 [.*-] 形式的内容(其中 .star 不是中的文字)这个案例)。
归档时间: |
|
查看次数: |
581 次 |
最近记录: |