2015-05-10 1 views
2

Я хочу поделиться sometext на whatsapp, поэтому я конвертирую html в текст, иначе он отображает все теги.Ruby: Convert <br> to newline URI encode

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

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

@whatsapp_text = u strip_tags(@post.summary) 

ответ

1

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

gem 'nokogiri' 

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

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

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

+0

это сработало! спасибо :) – StarWars

+0

добро пожаловать! – davidb