如何解析这个特定的HTML?

时间:2011-01-05 09:46:14

标签: regex

我有以下字符串:

<span class="ClassName @variable" title="ClassName @variable">Variable Title</span>

“ClassName”,“variable”&amp; “变量标题”是参数。

现在我想从该句中提取“ClassName”,“variable”和“Variable Title”。我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

使用Javascript:

var matches = /<span class="(.*)" title="(.*)">(.*)<\/span>/.exec(str);

str是您的标记。

则...

matches[1]=class
matches[2]=title
matches[3]=tag content

请注意,您应该使用正确的HTML解析器而不是正则表达式,但不要介意:)

答案 1 :(得分:1)

这是一个Perl解决方案:

#!/usr/bin/perl
use 5.10.1;
use strict;
use warnings;
use Data::Dumper;

my $str = q!<span class="ClassName @variable" title="ClassName @variable">Variable Title</span>!;
my @list = $str =~ m#<span class="(\w+) @(\w+).*?>([\w\s]+)</span>#;

say Dumper \@list;

<强>输出:

$VAR1 = [
          'ClassName',
          'variable',
          'Variable Title'
        ];