本文介绍了XPath的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,


我是XPath的新手。我对它有疑问。


我的xml是这样的:


< UserInfo>

< ;联系人>

<名称> Chris Bob< /名称>

< / Contacts>

<联系人>

<名称> Mike Chris< /名称>

< / Contacts>

<联系人>

<名称> ; Chris< / Name>

< / Contacts>

< Contacts>

< Name> Chrisine< / Name>

< / Contacts>

< Contacts>

< Name> Kiran Kumar< / Name>

< ; / Contacts>

< Contacts>

< Name> Kumar< / Name>

< / Contacts>

< / UserInfo>


所以,我想搜索输入html文本中值为的所有名称

box。


如果我进入Kumar,那么最后两个节点应该是因为它有kumar在

它。同样,如果我进入Chris,那么前三个节点应该显示,

但是第四个节点不应该来。

这是可能的。请帮我说明怎么做。


--Phani

Hi all,

I am new to XPath. I have a doubt in it.

My xml is like this:

<UserInfo>
<Contacts>
<Name>Chris Bob</Name>
</Contacts>
<Contacts>
<Name>Mike Chris</Name>
</Contacts>
<Contacts>
<Name>Chris</Name>
</Contacts>
<Contacts>
<Name>Chrisine</Name>
</Contacts>
<Contacts>
<Name>Kiran Kumar</Name>
</Contacts>
<Contacts>
<Name>Kumar</Name>
</Contacts>
</UserInfo>

So, i want to search for all names with the value in enter in html text
box.

If i enter Kumar then the last two nodes should come as it has kumar in
it. Similarly if i enter Chris then first three nodes should display,
but the fourth one should not come.
Is this possible. Please help me on how to do it.

--Phani

推荐答案




如果你使用XPath

/ UserInfo / Contacts / Name [contains(。,''Kumar'')]

then all< Name>找到包含字符串''Kumar''的元素。


-


Martin Honnen







这是一个正则表达式问题,在XSLT1.0中没有定义正则表达式,但是将在XSLT2.0中


同时你可以使用扩展,或解决它(以一种非常丑陋的方式):

< xsl: apply-templates select =" Contacts [contains(concat('''',Name,''''),concat('''',


Hi,

This is a regular expression problem, regexes are not defined in XSLT1.0, but will be in XSLT2.0

Meanwhile you can use extension, or work around it (in a quite ugly way):
<xsl:apply-templates select="Contacts[contains(concat('' '',Name,'' ''),concat('' '',



这篇关于XPath的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-20 12:59