用Regex捕捉Xpath条件
本文关键字:条件 Xpath 捕捉 Regex | 更新日期: 2023-09-27 18:01:32
我想捕捉Xpath表达式中的条件。例如,在下面的表达式中:
loan:_applicant/base:_entity/person:_phones/base:SmartRefOfPhoneeJDvviUx[base:_entity/contact:_category/base:_underlyingValue='Personal' and base:_entity/contact:_isMobile/base:_underlyingValue!='true']/base:_entity
I want to catch:
base:_entity/contact:_category/base:_underlyingValue='Personal'
和
base:_entity/contact:_isMobile/base:_underlyingValue!='true'
操作符和在Xpath示例中可以是或
是否有可能使用Regex获得条件?
Xpath谓词用方括号括起来,因此
string regex=@"'[.*']";
string predicate=Regex.Match(input, regex).Value;//assuming there is a match
regex=@"'s(and|or)'s";
string[] conditions=Regex.Split(predicate, regex);
XPath 2.0具有正则表达式匹配的函数,例如matches()、replace()和tokenize()。这些在XPath 1.0中不可用。