in reply to Reg Expressions
If, and only if, your data contains only the meta tag, and you are not attempting to extract these from a larger set of html data, then this should work for you.
$string ='<meta name="description" content="..."/>'; print $1 if $string =~ m[^<meta .*?name\s*=\s*"([^"]+)".*?/>$]i; description
It will only work if $string contains only meta tag and nothing else.
Next comes the question of how would you isolate the meta tag from a larger body of HTML. The answer is that you almost certainly would need to use one of the HTML::* modules, at which point, the above becomes redundant as they will allow you to get at the attributes of the meta tags (and every other tag) without needing a regex.
Examine what is said, not who speaks.
The 7th Rule of perl club is -- pearl clubs are easily damaged. Use a diamond club instead.
|
|---|