XPath 文本/替换以查找可能包含软连字符的文本
Posted
技术标签:
【中文标题】XPath 文本/替换以查找可能包含软连字符的文本【英文标题】:XPath text/replace to find text which may contain soft-hyphen 【发布时间】:2021-02-26 13:03:21 【问题描述】:搜索文本:Bescheinigungen
我的 XPath 还应该返回包含软连字符的元素,例如:Beschei\u00ADnigungen
。
我试过了:
//*[text()[replace(., "\u00AD", "")="Bescheinigungen"]]
不起作用。需要一些帮助,请。
【问题讨论】:
【参考方案1】:好的,必须使用一些“帮助”代码才能使其工作:
public static WebElement findByText(WebDriver driver, String text)
List<WebElement> elements = driver.findElements(By.xpath("//*[text()]"));
return elements.stream().filter(element ->
String elementText = element.getText();
if (elementText != null && !elementText.isEmpty())
return text.equals(elementText.replace("\u00AD", ""));
return false;
).findFirst().orElseThrow(NotFoundException::new);
【讨论】:
以上是关于XPath 文本/替换以查找可能包含软连字符的文本的主要内容,如果未能解决你的问题,请参考以下文章