xml节点名称验证

时间:2011-08-18 08:08:44

标签: xml regex context-free-grammar

我想创建将验证xml节点名称的正则表达式。我找到了名字的语法,但我不知道它的某些部分是什么意思。 http://www.xml.com/pub/a/2001/07/25/namingparts.html

[4] NameChar ::= Letter | Digit | '.' | '-' | '_' | ':' | CombiningChar | Extender
[5] Name ::= (Letter | '_' | ':') (NameChar)*

CombiningChar和Extender是什么意思?

感谢。

1 个答案:

答案 0 :(得分:1)

根据您的规范,我认为这应该可以解决问题:

(\w|_|:)(\w|\d|\.|-|_|:)*

没有CombiningChar和Extender。在official spec中,您可以找到CombiningChar和Extender的确切含义(在该页面上为Ctrl + F),但您必须翻译unicode代码。