Рубин: очистить HTML, использовать Hpricot или просто regex? - PullRequest
2 голосов
/ 05 апреля 2011

Я хочу сделать элементарную очистку HTML.В основном хотите создать белый список разрешенных тегов и отклонить все остальное.

Стоит ли Hpricot в этом случае?Есть ли какая-то особенность, которую я упустил, которая спасет меня от переписывания колеса?Или лучше просто написать белый список тегов с помощью регулярных выражений и помассировать HTML-документ через это?просто ищу путь наименьшего сопротивления.

1 Ответ

8 голосов
/ 05 апреля 2011

Сначала путь наименьшего сопротивления может показаться регулярным, но затем, когда вы пропускаете через него больше текста, вы понимаете, что он ломается снова и снова и заставляет вас работать больше.Вот почему опытные программисты знают, что для такой распространенной проблемы используют парсеры XML / DOM.

Я рекомендую вам использовать Nokogiri, а не Hpricot, потому что он быстрее и лучше поддерживается.

https://github.com/rgrove/sanitize/

Sanitize использует Nokogiri, чтобы делать именно то, что вы делаете.

...