RegEx/XPath以匹配XML中的某些Adobe LiveCycle Designer字段

RegEx/XPath以匹配XML中的某些Adobe LiveCycle Designer字段,regex,xml,xpath,livecycle-designer,xfa,Regex,Xml,Xpath,Livecycle Designer,Xfa,我使用以下正则表达式来匹配Adobe LiveCycle Designer XFA表单的XML视图中的元素 检查RegEx(?i)RegEx绝对不是查询XML的最佳选项。我的建议是使用某种与XML相关的工具/框架/机制。XPath就是其中之一。在您的情况下,获取具有相应子元素的字段元素的XPath查询将是: //field[@presence = "hidden" and .//button and .//bind[@match = "none"]] 多亏了基里尔·波利什丘克,他让我找到了答案

我使用以下正则表达式来匹配Adobe LiveCycle Designer XFA表单的XML视图中的
元素


检查RegEx
(?i)RegEx绝对不是查询XML的最佳选项。我的建议是使用某种与XML相关的工具/框架/机制。XPath就是其中之一。在您的情况下,获取具有相应子元素的
字段
元素的XPath查询将是:

//field[@presence = "hidden" and .//button and .//bind[@match = "none"]]

多亏了基里尔·波利什丘克,他让我找到了答案

其目的是获取字段名列表,这些字段是可填充的字段,以便我们可以在数据库中注册它们。为此,我们需要生成INSERT SQL语句。我们已经有了用于此目的的Excel模板,我们只需要字段名

因此,我使用和下面的XPath表达式来获取字段名列表:

(/subform/field[非(.//按钮)]|/subform/exclGroup)/@name

然后,我可以用Notepad++简单地解析输出,只得到名称,每行一个字段

这比使用正则表达式容易100倍


塔瑞克

是的,你说得对!我可以编写Javascript程序来获得所需的输出,但是,我正在寻找更简单的方法。我尝试了Notepad++和XMLTools,我想我已经成功了。XML工具(Evaluate XPath)的唯一问题是输出不包括匹配元素的整个XML。你能推荐一个类似于NP++的工具吗?它支持XPath,并为匹配提供更好的输出。谢谢你的回答,我发布了另一个答案来澄清我所做的。
//field[@presence = "hidden" and .//button and .//bind[@match = "none"]]