【发布时间】:2018-03-06 17:14:48
【问题描述】:
样本:
...
<PEOPLE>
<PERSON>JOHN, the fighter<PERSON/>
<PERSON>SALLY, the visionary<PERSON/>
<PGROUP>
<PERSON>YOYO<PERSON/>
<PERSON>BENJI<PERSON/>
</PGROUP>
<PERSON>builders<PERSON/>
<PERSON>cleaners<PERSON/>
<PGROUP>
<PERSON>Clowny, good person<PERSON/>
<PERSON>Clownee, bad person<PERSON/>
</PGROUP>
<PERSON>Gentleman<PERSON/>
</PEOPLE>
...
我想插入一个字符串并找到那个人(如果存在): 约翰, 建设者, 小丑 (应该返回第一次出现 => 小丑,好人), 战斗机, ...
我已经尝试过这些事情,但似乎没有一个能给我一个结果或我想要的结果:
//PERSON 将选择所有的人; contains(Person,'"+searchStr+"'); //PERSON[1] 将选择 3 个人; //PERSON[PERSON='YOYO'] 不起作用
到目前为止,这些都没有奏效。我希望返回全名。
编辑:
如果找到了 searchStr(输入是准确的),则返回 1。不计其数,它返回人。如果找到搜索的人,则使用 /PERSON 附加表达式始终返回第一个人。
count(//PEOPLE[//PERSON="小丑,好人"])
【问题讨论】: