来源网站位于Nethys
由于我不了解所有术语,因此我将尽可能保持中立。我正在尝试从此网站上将信息收集到google doc中的单独列中。
我想要一列中的粗体文本,下一列中的关联链接以及另一列中的拼写描述。当描述引用另一个咒语时,就会出现问题,他们用斜体将描述分成C153
和C154
中看到的多个部分。我认为,抓住粗体和换行符之间的所有内容会更容易,但我不知道上下文。
从一个示例(例如,如果格式错误请原谅我,我主要是在这里猜测);
<p>
<b>
<a href='link1'>
Bold Link 1
</a>
</b>
:Followed by normal text
<br>
<b>
<a href='link2'>
Bold Link 2
</a>
</b>
:Normal Text
<i>with an italic</i>
in between
<br>
<b>
<a href='link3'>
Bold Link 3
</a>
</b>
:Back to this one
<br>
</p>
我可以退货
:Followed by normal text
Normal text
in between
:Back to this one
但是我希望它返回:Followed by normal text
:Normal text with an italic in between
:Back to this one
我什至不知道单个命令是否可行,但任何帮助将不胜感激。
答案 0 :(得分:1)
如果您要选择p
根元素的每个文本节点后代,而不是a
的后代,则可以使用以下XPath:
/p//text()[not(ancestor::a)]
或更严格地使用Kayian方法:
/p//text()[count(.|/p//a//text()) != count(/p//a//text())]
注意:XPath 1.0没有交集,也没有设置差分运算符,但是它具有|
运算符的并集和count()
函数的基数。 Dr. Michael Kay发现了足以测试集合成员资格的条件:a
元素是B
集的成员,且仅当{a
}联合B
具有基数与B
相同。从那里您可以构建所有其他集合操作。