如何在Perl中创建一个简单的浏览器用户代理解析器?

前端之家收集整理的这篇文章主要介绍了如何在Perl中创建一个简单的浏览器用户代理解析器?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要在Perl中创建一个简单的浏览器用户代理解析器.我找到了一个 @L_404_0@代码,但我的知识相当有限(特别是在正则表达式中).所以,这是我想写的Perl等价的代码.

if ($l = ereg($pattern,$agent,$a = array()))
        {
          array_push($found,array("product" => $a[1],"version" => $a[3],"comment" => $a[6]));
          $agent = substr($agent,$l);
        }

$agent是作为参数传递的用户代理字符串,并返回一个关联数组$found,每个关联数组定义代理字符串中的产品/注释(关联数组的键是product,version,comment). $pattern是我正在搜索用户代理正则表达式,我已经知道了.

那么,这在Perl中会是什么样子?

编辑:似乎对于我是否需要Perl兼容的正则表达式或Perl中的等效函数存在困惑.我正在寻找一个Perl函数和语法来做同样的事情.

解决方法

您的PHP脚本可以用Perl编写,如:

my @found;
if ($agent =~ s/$pattern//) {
  push @found,{product => $1,version => $3,comment => $6};
}

为了打印数组@found的内容

use Data::Dumper;
print Dumper(\@found);

猜你在找的Perl相关文章