在Xpath 1.0中,猜测这是不可能的,但我试了一下......
XML
<img src="/media/brand_microsoft.png">
Xpath的:
//div[@id='logo']/img/@src
输出变为:
/media/brand_microsoft.png
无论如何排除 / media / brand _ 和 .png ?所以我得到:
microsoft
答案 0 :(得分:2)
你可以试试这个:
substring-before(substring-after(/img/@src, '/media/brand_'), '.png')
substring-before :
在string2出现之前返回string1的开头
示例:substring-before('12 / 10','/') 结果:'12'
substring-after : 在string2出现之后返回string1的剩余部分
示例:substring-after('12 / 10','/') 结果:'10'
更新:
在http://www.freeformatter.com/xpath-tester.html中测试:
xml输入:
<img src="/media/brand_Barcardi_Breezer.png"/>
xpath表达式:
substring-before(substring-after(/img/@src, '/media/brand_'), '.png')
输出:
'Barcardi_Breezer'