如何将此正则表达式转换为Python

0 投票
2 回答
4074 浏览
提问于 2025-04-15 20:15

我想在Python中使用这个正则表达式:

 <(?:"[^"]*"['"]*|'[^']*'['"]*|[^'">])+>

(来自 正则表达式匹配开放标签,但不包括XHTML自包含标签)

def removeHtmlTags(page):
    p = re.compile(r'XXXX')
    return p.sub('', page)

看起来我不能直接把这个复杂的正则表达式放进上面的函数里。

2 个回答

0

如果你需要去掉HTML标签,这段代码应该可以帮到你:

import re

def removeHtmlTags(page):
    pattern = re.compile(r'\<[^>]+\>', re.I)
    return pattern.sub('', page)
3

在我这边运行得很好。你可能是因为引号的问题遇到了麻烦。试试用三个引号把它包起来:

def removeHtmlTags(page):
    p = re.compile(r'''<(?:"[^"]*"['"]*|'[^']*'['"]*|[^'">])+>''')
    return p.sub('', page)

撰写回答