Пример 1
<w:r>
<w:t>gene</w:t>
</w:r>
<w:ins>
<w:t>s</w:t>
</w:ins>
<w:r>
<w:t> </w:t> #I want to select this element
</w:r>
<w:del >
<w:t>house</w:t>
</w:del>
<w:r>
<w:t>had</w:t>
</w:r>
<w:r>
<w:t> </w:t> #I do not want to select this element
</w:r>
<w:ins >
<w:t>under</w:t>
</w:ins>
<w:del>
<w:t>in</w:t>
</w:del>
<w:r>
<w:t> </w:t> #I want to select this element
</w:r>
<w:ins>
<w:t>the</w:t>
</w:ins>
Пример 2
<w:r>
<w:t>specific genes</w:t>
</w:r>
<w:ins>
<w:t>;</w:t>
</w:ins>
<w:del>
<w:t>,</w:t>
</w:del>
<w:r>
<w:t> </w:t> #I don't want to select this one
</w:r>
<w:r>
<w:t>SO</w:t>
</w:r>
Элементы, которые я хочу выбрать, указаны выше.Элементам w: r, которые содержат пробел, должен предшествовать непосредственно элемент w: ins или w: del, а также сразу должен следовать элемент w: ins или w: del
Я начал со следующеговыражение, но это не принимает во внимание, что предыдущий брат может быть элементом aw: del.Аналогично для следующих братьев и сестер.Кроме того, он должен проверить элемент непосредственно перед или сразу после него, чтобы увидеть, есть ли его элемент aw: ins или w: del.
search ("// w: r [. = '' И previous-sibling :: w: ins и follow-sibling :: w: del] ")
Однако, похоже, это не работает, так как выбираются все элементы w: r, содержащие пробел.
Я использую Нокогири.
Есть идеи?