Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Text 如何使用xpath在title元素的括号中查找首字母缩略词?例如(蚂蚁)_Text_Xpath_Special Characters - Fatal编程技术网

Text 如何使用xpath在title元素的括号中查找首字母缩略词?例如(蚂蚁)

Text 如何使用xpath在title元素的括号中查找首字母缩略词?例如(蚂蚁),text,xpath,special-characters,Text,Xpath,Special Characters,在此xml示例中: <concept><title>Another Neat Tool(ANT)</title></concept> 另一个整洁的工具(ANT) 上下文为:/concept/title/ 我想返回任何包含任意开括号、任意文本和右括号的概念标题元素。我希望它在()中找到(ANT)或任何其他文本 我成功地使用了/context/title/text(),(“ 但它只定位并高亮显示(而不是(ANT) 如何修改xpath 2.0以定位任

在此xml示例中:

<concept><title>Another Neat Tool(ANT)</title></concept>
另一个整洁的工具(ANT)
上下文为:/concept/title/

我想返回任何包含任意开括号、任意文本和右括号的概念标题元素。我希望它在()中找到(ANT)或任何其他文本

我成功地使用了
/context/title/text(),(“

但它只定位并高亮显示(而不是(ANT)

如何修改xpath 2.0以定位任何包含括号内首字母缩写词的概念标题元素。

尝试此表达式(您可能需要调整它以包含根节点):

由此:


自动柜员机(ATM)
中央标准时间(CST)
打开和关闭(ABC)
仅关闭(DEF)
仅限开放(GHI)
打开和关闭(测试)
它返回以下内容:

ATM
CST
ABC
TEST
XPath表达式

/concept/title[matches(., '\([A-Z]{2,}\)')]
将返回包含首字母缩略词的所有/concept/title元素的序列,首字母缩略词定义为括号中的两个或多个大写字母

如果要返回首字母缩略词,可以使用

/concept/title[matches(., '\([A-Z]{2,}\)')]/
   replace(., '^.*\(([A-Z]{2,})\).*$', '$1')

您的示例既不是有效的XML,也没有提供任何特定的XPath。请提供具体的数据和XPath,您当前的问题使您很难猜测您拥有哪些数据以及您已经尝试并想要实现的内容。您是否仅使用xslt或xpaht?它应该是XPath-1.0还是2.0?XML是:另一个整洁的工具(ANT)xpath 2.0,我尝试过:/concept/title/text(),“(“这只返回了开头的括号(我希望它返回(ANT))您是否保证每个
标题都有开头
”(“
,也有结尾
”)
?如果标题包含首字母缩略词,则首字母缩略词始终包含在括号内。例如:自动柜员机(ATM)中央标准时间(CST)xpath将返回两个概念元素,并突出显示(ATM)和(CST)。我不希望xpath表达式返回任何不包含首字母缩略词的内容。
/concept/title[matches(., '\([A-Z]{2,}\)')]/
   replace(., '^.*\(([A-Z]{2,})\).*$', '$1')