Xpath 检索部分文本

Xpath 检索部分文本,xpath,Xpath,我使用以下XPath检索句子: {//node/node/node/node[@class='InfoType18']/metalist/meta[@name='custom.ECO.regul1'],' (')} 结果是: This is a test (EU) 206/2012 我使用下拉菜单,因此文本的总字符数将发生变化。 分为两部分: 1欧盟206/2012之前的部分 2欧盟第206/2012号部分 问题1: 我已经解决了:检索欧盟代码之前的文本: {substring-before

我使用以下XPath检索句子:

{//node/node/node/node[@class='InfoType18']/metalist/meta[@name='custom.ECO.regul1'],' (')}
结果是:

This is a test (EU) 206/2012
我使用下拉菜单,因此文本的总字符数将发生变化。 分为两部分: 1欧盟206/2012之前的部分 2欧盟第206/2012号部分

问题1: 我已经解决了:检索欧盟代码之前的文本:

{substring-before(//node/node/node/node[@class='InfoType18']/metalist/meta[@name='custom.ECO.regul1'],' (')}
问题2: 我找不到一种方式,因为我不能说:EU之前的子字符串,因为文本长度是可变的

如何解决此问题?

您是否尝试过它的工作方式与以前的子字符串相同

因此,在EU之后检索部件的xPath如下所示:

substring-after(//node/node/node/node[@class='InfoType18']/metalist/meta[@name='custom.ECO.regul1'],')')

在这种情况下,文本的长度应该无关紧要。

你能发布你正在使用的html吗?它是一个非常大的xml文件,具有布局定义等。它不是一个10行的文档,而是一个10.000行的文档。就像描述的那样:一个句子必须分为两部分。符号之前的第1部分是可以的,但是现在我仍然需要从开始到结束的部分。请记住,第1部分和第2部分的长度是可变的。您能提供更多输入数据和预期输出的示例吗?首先,我应该说:不,这不是我想要的,因为我还需要欧盟,但随后出现了一个奇妙的想法,将欧盟作为一个中立的元素插入到第一个xpath之间,该xpath在第二个xpath之前剪切该部分,而您现在建议的部分。我可能很高兴选择列表中的所有条目都是EU:谢谢!!!!!!