【问题标题】:Ranorex: How get InnerText of elementRanorex:如何获取元素的 InnerText
【发布时间】:2022-09-23 00:06:30
【问题描述】:

可以使用 Ranorex 适配器获取 HTML 元素的innerText 吗?内部文本是指所选元素的文本及其所有后代的文本。

    标签: ranorex


    【解决方案1】:

    来自 Ranorex 官方支持的This post 暗示 Ranorex 中没有可以执行此操作的功能。因此这篇文章建议首先通过 GetInnerHtml() 获取内部 HTML,然后过滤掉该字符串中的元素标签。

    但是,建议的帖子不适合一种特殊情况:

    HTML-comment 包含 HTML 标签,例如

    <!--<div>else42</div>-->
    

    帖子 <.*?> 中建议的正则表达式不会过滤掉 --> 。因此 HTML-cmets 必须在 HTML-tags 被过滤掉之前被过滤掉:

    string innerText = webElement.GetInnerHtml();
                
    if(innerText != null) {
      innerText = Regex.Replace(innerText, "<!--[\\s\\S]*?-->", string.Empty); // remove HTML-comments
      innerText = Regex.Replace(innerText, "<.*?>", string.Empty); // remove HTML-tags
    }
    

    【讨论】:

      猜你喜欢
      • 2011-04-18
      • 2023-01-17
      • 2020-07-07
      • 2012-03-09
      • 2023-03-19
      • 2021-05-20
      • 2019-07-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多