Как преобразовать это регулярное выражение в Python - PullRequest
0 голосов
/ 10 марта 2010

Я хочу использовать это регулярное выражение в Python:

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

(из RegEx соответствует открытым тегам, кроме автономных тегов XHTML )

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

Кажется, я не могу напрямую подставить сложное регулярное выражение в вышеуказанную функцию.

Ответы [ 2 ]

2 голосов
/ 10 марта 2010

Работает здесь нормально. Возможно, у вас проблемы из-за кавычек. Просто трижды процитируй это:

def removeHtmlTags(page):
    p = re.compile(r'''<(?:"[^"]*"['"]*|'[^']*'['"]*|[^'">])+>''')
    return p.sub('', page)
0 голосов
/ 10 марта 2010

Если вам нужно удалить HTML-теги, это должно сделать это:

import re

def removeHtmlTags(page):
    pattern = re.compile(r'\<[^>]+\>', re.I)
    return pattern.sub('', page)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...