seth: Problem mit Ausdruck von regulärem Ausdruck

Beitrag lesen

gudn tach!

Was Du da genau erfassen willst, ist der Inhalt vom content-Attribut.
Auf das content folgt unmittelbar das ", der Inhalt wird von einem weiteren " beendet, nach dem content kommen keine weiteren Attribute, innerhalb des content steht kein " - dann sieht's ungefähr so aus:

/<meta .* content="(.*)".*/>

aber nur ungefaehr, denn:

my $str = '<meta name="keywords" content="text, test,test, etc." /> <foo bar="baz" quux="quuux" />';
print $1 if($str=~/<meta .* content="(.*)".*/>/);

liefert:
text, test,test, etc." /> <foo bar="baz" quux="quuux

besser ist
/<meta .* content="(.*?)".*?/>/
oder
/<meta .* content="([^"]*)"/

prost
seth