【问题标题】:Regexp that matches all the text content of a HTML input匹配 HTML 输入的所有文本内容的正则表达式
【发布时间】:2009-12-06 15:02:58
【问题描述】:

我的网站上有一些文章希望自动更正和翻译。但我需要获取内容,而不需要 HTML 标签。

这个想法是有一个正则表达式,可以检索标签之间的所有内容(如果可能,还可以检索标签字段中的内容,如<img alt='Little house'>)。问题是我真的不知道如何编写这样的正则表达式。有什么想法吗?

【问题讨论】:

标签: c# .net html regex


【解决方案1】:

我建议使用HTML parser,而不是依赖正则表达式。使用正则表达式解析 HTML 通常是禁忌,并且几乎不可能在所有情况下都正确。这里有很多关于 SO 的问题都得出了相同的结论。

EDIT 看起来我们中的几个人有相同的想法......另外,here is a question 讨论了更多解析器。

【讨论】:

    【解决方案2】:

    也许正则表达式不是这项工作的最佳选择(我会省去你强制性的长篇大论)。

    我建议您查看一个 HTML 解析库来帮助您,例如 Html Agility Pack

    【讨论】:

      【解决方案3】:

      正如人们所说,正则表达式不是最推荐的方式,但如果您决定使用正则表达式,这应该可以帮助您开始:

      string pattern = @"(<(/?[^>]+)>)"
      strippedString = Regex.Replace(str, pattern, string.Empty);
      

      【讨论】:

        【解决方案4】:

        不确定这是否有帮助,但我有能力将我网站上的文章翻译成读者喜欢的语言,我使用 Bing translation widget 完成了这项工作,所以我不做任何 html 解析,这一切都为我完成了。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-04-13
          • 2010-11-18
          • 2013-04-02
          • 1970-01-01
          • 1970-01-01
          • 2012-10-13
          • 1970-01-01
          • 2012-12-05
          相关资源
          最近更新 更多