【问题标题】:Regex to select specific characters inside HTML tags正则表达式选择 HTML 标记内的特定字符
【发布时间】:2014-02-14 11:29:04
【问题描述】:

我只是在寻找标准标签,例如 p、title、h1、h2 等。

<[/a]*>content resides in here</[/a]*>

我专门寻找标点符号来对抗潜在的 SQL 注入。另外,对于这个项目,我无法使用 BeautifulSoup。

【问题讨论】:

  • 你看过HTMLParser吗?
  • 为什么无法使用 BeautifulSoup?它是纯 Python(因此它可以在 Python 本身工作的任何地方工作,无需外部工具)并且它是 MIT 许可的(因此您可以在商业软件中使用它)。
  • 为什么要验证何时可以更轻松地进行消毒?您不想在 SQL 查询中使用转义的引号字符吗?

标签: python regex


【解决方案1】:

试试这个正则表达式:

<(a|h1|p|title)[^>]*>([^<]+)</\1[^>]*>

讨论

演示

http://regex101.com/r/mB4bQ1

讨论

我假设标签将只包含文本,没有标签...
Python 不支持递归正则表达式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多