如何应用substring-after和substring-before函数
本文关键字:substring-after substring-before 函数 应用 何应用 | 更新日期: 2023-09-27 18:06:33
我的html结构如下
<td class="opps">1:2</td>
我正在尝试用XPath拆分td的值,如下所示
.//*[contains(@class, 'opps')]/text()[normalize-space(substring-after(., ':'))]
.//*[contains(@class, 'opps')]/text()[normalize-space(substring-before(., ':'))]
但是value返回1:2
如何分别提取1和2 ?
我也使用HtmlNodeNavigator和htmllagilitypack。
怎么了?
提前感谢。
我多找了一下才找到解决办法。
如果使用HtmlNodeNavigator或XPathNavigator,解决方案如下
string _result1 = <HtmlNodeNavigator>.Evaluate("substring-after(.//*[contains(@class, 'opps')]/text(), ':')") as string;
string _result2 = <XPathNavigator>.Evaluate("substring-before(.//*[contains(@class, 'opps')]/text(), ':')") as string;
为了以防万一,您也可以使用c#方法。例如,
string strVal = "1:2";
string[] splitedStrArr = strVal.Split(':');
// you have now 2 elements inside the array. You can use it separately