Ruby, rss ридер, удалить и подменить символы.

Модератор: Модераторы разделов

Аватара пользователя
Babusha
Сообщения: 203
ОС: Убунту

Ruby, rss ридер, удалить и подменить символы.

Сообщение Babusha »

Вчера прочитал книжку по ruby и решил я написать себе rss клиент.
Но тут появилась такая проблема, вот часто в rss записях, есть всякие <br>, <div> и бла бла.
Мне бы хотелось что бы <br> подменивалось переносом на новую строку. А то вот как получается допустим с башоргом:
http://clip2net.com/clip/m23027/1290265618-clip-16kb.png
И как поудалять всякие <div>, &quot; ?
На руби второй день, по этому еще не обзавелся нужными знаниями, подскажите. В гугле не нашел, нужных способов в справочниках тоже.
Если что, вот скрипт:

Код: Выделить всё

#!/usr/bin/ruby

$KCODE = "U"

require 'rss'
require 'rubygems'
require 'colored'

ARGV.each do|a|

  rss_feed = "#{a}"

  rss_content = ""

  open(rss_feed) do |f|
    rss_content = f.read
  end

  rss = RSS::Parser.parse(rss_content, false)

  puts "Заголовок: #{rss.channel.title}"    .red
  puts "Ссылка: #{rss.channel.link}"        .green
  puts "Всего: #{rss.items.size}"        .yellow

  rss.items.each do |item|
    puts; puts
    puts "#{item.link}'" .red
    puts "#{item.title}" .yellow
    puts "Опубликован: #{item.date}"
    puts "#{item.description}"
  end
end
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: Ruby, rss ридер, удалить и подменить символы.

Сообщение diesel »

Не ну просто удалить например <tag> и </tag> в строке как-то вот так:

Код: Выделить всё

diesel@debian:~$ ruby -e 'a="<tag>some string</tag>"; puts a.gsub(/<\/?tag>/,"")'
some string
diesel@debian:~$ ruby -e 'a="<tag>some string</tag>";  a.gsub!(/<\/?tag>/,""); puts a'
some string


Более подробно вот тут: http://ruby-doc.org/core/classes/String.html

Это если не думать о том шо оно HTML, и шо к нему надо относится как к HTML.
Спасибо сказали:
Аватара пользователя
Babusha
Сообщения: 203
ОС: Убунту

Re: Ruby, rss ридер, удалить и подменить символы.

Сообщение Babusha »

О, спасибо, работает!
Спасибо сказали: