【发布时间】:2015-06-12 17:55:59
【问题描述】:
我正在尝试修复其他人多年前编写的 xsd 文件中的错误。问题是 xml 没有针对 xsd 进行验证。
错误信息返回如下:
"分面的值'0:0|-?\d{0,3}.*[0-9]+:-?\d{0,3}.*[0-9]+' 'pattern' 不是有效的正则表达式。”
“WXS 架构文件名.xsd 编译失败”
(我正在使用 xmllint 来验证)
我不擅长正则表达式,谁能解释一下这是做什么的?
0\:0|\-?\d{0,3}\.*[0-9]+\:\-?\d{0,3}\.*[0-9]+
如果我在每列 ':' 之前删除 '\' (反斜杠),它看起来像这样:
0:0|\-?\d{0,3}\.*[0-9]+:\-?\d{0,3}\.*[0-9]+
然后错误消失,架构编译并且 xml 验证。但是这些变化是什么,正则表达式是否仍然保持其最初的预期功能?
【问题讨论】:
标签: regex validation