проверка имени узла XML - PullRequest
1 голос
/ 18 августа 2011

Я хочу создать регулярное выражение, которое будет проверять имя узла 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 Ответ

1 голос
/ 18 августа 2011

В соответствии с вашей спецификацией, я думаю, что это должно сработать:

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

Это без CombiningChar и Extender. В официальной спецификации вы можете найти, что именно подразумевается под CombiningChar и Extender (Ctrl + F для них на этой странице), однако вам придется переводить коды юникода.

...