Из документации , методы массажа - это просто пары (regular expression, replacement function)
, поэтому я не думаю, что это действительно случай использования массажа или регулярных выражений.
например, чтобы привести в порядок искаженные комментарии:
(re.compile('<!-([^-])'), lambda match: '<!--' + match.group(1))
Если вы посмотрите на источник метода _feed
в BeautifulSoup.py, вы увидите, что они просто запускаются последовательно с разметкой:
for fix, m in self.markupMassage:
markup = fix.sub(m, markup)
Итакхотя вы можете выполнить некоторую собственную обработку регулярных выражений до того, как BeautifulSoup увидит разметку, вам, вероятно, лучше объединить любые необходимые дополнительные операции со встроенным встроенным MARKUP_MASSAGE
, как показано в ответе Оли.