Ruby: конвертировать <br> в кодировку URI новой строки

Я хочу поделиться некоторыми текстами в WhatsApp, поэтому я конвертирую HTML в текст, иначе он отображает все теги.

В настоящее время я использую strip_tags для удаления тегов, но это также удаляет разрывы из текста. Как преобразовать HTML в текст и преобразовать разрывы в символы новой строки и URL-адрес кодирования текста.

в настоящее время я использую следующие

@whatsapp_text = u strip_tags(@post.summary)

1 ответ

Решение

Я предлагаю вам использовать Nokogiri для решения этой проблемы. Nokogiri может анализировать HTML и преобразовывать источник веб-сайтов в текст, читаемый человеком, хотя он не преобразует html-разрывы в переносы строк, он может избавить вас от многих проблем. Для этого добавьте следующую строку к вашему Gemfile

gem 'nokogiri'

бежать bundle install, Тогда вы можете решить вашу проблему следующим образом:

Nokogiri::HTML.parse(@post.summary.gsub("<br>", "\r\n").gsub("<br/>", "\r\n")).inner_text

Это должно сделать это для вас.

Другие вопросы по тегам