-1
我希望提取elementB
,然后元素C
和D
之前停止 - 即不提取的内容elementC
和elementD
的.text
。但是,我只知道如何提取整个div文本,使用Contents().Not
来忽略elementC
,但elementD
仍然被捕获。GoLang - GoQuery HTML插入失败
这是我目前使用的代码:
GoLang:
capturedText := s.Find("div").Contents().Not(".label").Text()
而忽略elementC
,但不elementD
,它没有外部标记。
HTML:
<li><span><h2>elementA</h2></span><div>elementB<br><span class="label">elementC</span>elementD</div></li>
如何只捕获的<div>
elementB
,而不是elementC
和elementD
?
编辑:
我试图关闭div标签,像这样:
s.Find(".label").BeforeHtml(`</div>`)
,也试过:
s.Find(".label").BeforeHtml(`</div><div>`)
和访问第一div
,不顾第二div
现在应该有elementD
:
jp, _ := s.Find("div").First().Html()
但是,这是行不通的。看来</div>
一定不能是一个开放标签 - 它需要是<div>...</div>
才能正确插入。但这不是我所需要的,我只需要</div>
或</div><div>
正确关闭第一个div
。
解决此问题的适当方法是什么?