Knifflig? Bild mit Pfad aus String filtern

Gib jemandem einen Fisch und er wird einen Tag lang satt.
Lehre ihn das Fischen und er kann sich sein Leben lang ernähren.
Woher kommt mir der Spruch nur bekannt vor (s.u.) ;-) Bei so kleinen Dreizeilern habe ich keine Skrupel, etwas fertiges zu liefern. Wenn der Fragende die genauen Hintergründe verstehen will, kann er sich ja immer noch die Dokumentation zu den verwenden Funktionen zu Gemüte führen oder im Thema nochmal nachhaken. Aber das alles ist hier ja eigentlich sowieso :offtopic:

Und "Einzeilen-Postings".

Vergesst mir bei dem ganzen bloß nicht, dass src in mehreren Varianten auftauchen kann, die nicht immer ganz valide seien müssen.

HTML:
<img src="bild">
<img src='bild'>
<img src=bild>
<img src=bild />
<img src = " bild " >
..........
Ruby:
require 'rubygems'
require 'hpricot'
require 'test/unit'

def get_path(str)
  Hpricot(str).search("img").first["src"]
end

class HTMLParserTest < Test::Unit::TestCase
  CASES = [
    "<img src=\"bild\">",
    "<img src='bild'>",
    "<img src=bild>",
    "<img src=\"bild\" />",
    "<img src='bild' />",
    "<img src=bild />",
    "<img src = \" bild \" >",
    "<img src = ' bild    ' >",
    "<img src =   bild  />",
    "<img src = \"bild\" >",
  ]

  def test_get_path
    CASES.each do |html|
      assert("bild", get_path(html))
    end
  end
end
Code:
1 tests, 10 assertions, 0 failures, 0 errors
SCNR :p (Und für einen Eintrag in meinem Ruby-Blog deswegen bin ich grade zu faul).

Grüße, Matthias
 
Zurück