XPath属性中的通配符

时间:2011-09-03 11:50:25

标签: c# xml xpath

我有这个:

//th[@style='border-bottom-color: #ce9c00; text-align: left; line-height: 25px;

我想让它选择任何颜色,就像在正则表达式中一样;

//th[@style='border-bottom-color: #......; text-align: left; line-height: 25px;

我该怎么做?我正在使用C#和Html Agility Pack。

2 个答案:

答案 0 :(得分:1)

使用matches()xpath函数并给它一个像这样的正则表达式。

//th[matches(@salary,'^border-bottom-color: #[0-9a-fA-F]{6}; text-align: left; line-height: 25px$')]

注意:我已经给出[0-9a-fA-F],因为颜色取十六进制十进制值,如果是这样,你可以简单地使用。(点)。

参考:http://www.w3schools.com/xpath/xpath_functions.asp

答案 1 :(得分:0)

您可以使用XPath 1.0字符串函数substringcontains等,例如:

//th[starts-with(@style, 'border-bottom-color: #')
    and contains(@style, '; text-align: left; line-height: 25px;')]