我正在制作一个聊天机器人,我得到了以下 xml
<questions>
<topic value='age'>
<phrase mood_modifier='10'>what's your age?</phrase>
<phrase mood_modifier='-10'>I dislike you, but what's your age?</phrase>
</topic>
<topic value='name'>
<phrase mood_modifier='10'>what's your name?</phrase>
<phrase mood_modifier='-10'>what's your name, ugly?</phrase>
</topic>
首先,我检查所有短语并检查用户提交的短语是否与我在上面的 XML 中添加的短语相同或相似,然后当我找到短语时,我想使用 XPath 获取主题的值。
我将用户提交的文本保存在一个变量中,我们称之为“UserText”
我该怎么做?
我试过了,但没有用,没有匹配,更不用说获取主题的@value了
/questions/topic/@value[../phrase/text()=UserText]
例如,如果用户输入“你叫什么名字,丑陋的?” xpath 将返回值 'name'
谢谢
最佳答案
xpath 表达式:
//questions/topic[./phrase/text()="what's your name?"]/@value
关于上面节点的 XML Xpath 选择值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46157368/