我的XML结构:
<root>
<!-- First -->
<A>
<B>123</B>
<C>456</C>
</A>
<!-- Second -->
<A>
<B>999</B>
<C>456</C>
</A>
<!-- Third -->
<A>
<B>123</B>
<C>456</C>
</A>
<!-- Fourth-->
<A>
<B>123</B>
<C>999</C>
</A>
<!-- Fifth -->
<A>
<X>123</X>
<Y>456</Y>
</A>
</root>
我想找到所有A元素,这些元素都有跟随它的兄弟姐妹。
所需的结果只是第一个元素,因为它等于第三个元素。
我试过这个:
//A[.= following-sibling::A]
但结果我得到了第一个和第三个元素。我猜第三个元素匹配第五个元素,因为=运算符只是比较字符串值,对吧?你能救我吗?
我甚至可以在XPath中计算匹配元素的位置,还是必须在XSL for循环中搜索它?
答案 0 :(得分:2)
我认为您正在寻找deep-equal
功能,请参阅//A[some $sibling in following-sibling::A satisfies deep-equal(. ,$sibling)]
,您可以在# To send messages asynchronously
producer = SimpleProducer(kafka, async=True)
producer.send_messages("my-topic", "async message")
# To consume messages, consumer1
consumer1 = SimpleConsumer(kafka, "my-group", "my-topic")
for message in consumer1:
print(message)
中使用。