不區分大小寫的 XPath contains() 函數
在 XPath 中,contains() 函數區分大小寫。但是,有一些方法可以解決此限制。
方法1:翻譯字元
此方法涉及在檢查子字串之前將字元轉換為小寫或大寫:
/html/body//text()[ contains( translate(., 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), 'test' ) ]
這將在檢查子字串「test」之前將文字中的所有大寫字母轉換為小寫。
方法2:動態XPath 表達式
使用JavaScript 等腳本語言,您可以建構處理不區分大小寫的動態XPath 表達式:
function xpathPrepare(xpath, searchString) {
return xpath.replace("$u", searchString.toUpperCase())
.replace("$l", searchString.toLowerCase())
.replace("$s", searchString.toLowerCase());
}
xp = xpathPrepare("//text()[contains(translate(., '$u', '$l'), '$s')]", "Test");
這替換佔位符在具有大寫、小寫和小寫版本的搜尋字串的XPath 表達式中。
其他注意事項
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3