打印匹配值的perl正则表达式是什么?例如,我想195从这个字符串打印
"2011-04-11 00:39:28,736::[main]::INFO (Main.java:73) Test.Main::main() Total Successful Transactions = 195".
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?提前致谢
我想知道是否有人能够在Windows上成功使用KiokuDB.有了ActivePerl 5.12.2,我没有在ppm存储库中预先编译它.使用cpan,它在测试File :: NFSLock时停止了.不过,我能够用notest安装它.
下面的简单测试似乎有记录:
package Person;
use Moose;
has ['name', 'age'] => (is => 'ro');
package main;
use Data::Dump;
use KiokuDB;
my $dir = KiokuDB->connect("hash");
{
my $scope = $dir->new_scope;
my $obj = Person->new(name => 'Joe', age => 34);
my $data_id = $dir->store($obj);
warn $data_id; # 6702A424-6BF6-1014-B0F5-EC4CE5BB15D7
my $got = $dir->lookup($data_id);
dd $got; # bless({ age => 34, name => "Joe" }, "Person")
}
Run Code Online (Sandbox Code Playgroud)
有人用它来做Windows上更大的东西,比如DBI后端吗?你认为它是否足够稳定/可用于一些较小的项目?
请至少提供一些使用方法的详细信息,以便我有一个与我的计划相符的想法.
我正在尝试使用XML :: LibXML处理XML 并报告某些元素所在的行.根据上面链接的文档,line_numbers选项应该做的伎俩,但我一直得到0.代码:
use XML::LibXML;
my $parser = XML::LibXML->new({ line_numbers => 1 });
my $xml = $parser->load_xml(location => 'some.xml');
for my $node ($xml->findnodes('//function')) {
warn $node->nodePath,"\n";
warn $node->line_number,"\n";
}
Run Code Online (Sandbox Code Playgroud)
找到节点,我的输出是
/database/functions/function
0
Run Code Online (Sandbox Code Playgroud)
知道如何让它工作吗?
我有一个相当奇怪的情况.我正在尝试使用Perl自动备份SVN存储库集合.我正在炮轰svnadmin dump命令,该命令将转储发送到STDOUT,以及遇到STDERR的任何错误.
我需要运行的命令将采用以下形式:
svnadmin dump $repo -q >$backupFile
Run Code Online (Sandbox Code Playgroud)
STDOUT将转到备份文件,但是,我需要在我的Perl脚本中捕获STDERR.
处理这种情况的正确方法是什么?
编辑:澄清:STDOUT将包含SVN转储数据STDERR将包含可能发生的任何错误
STDOUT需要以文件结尾,而STDERR需要以Perl结尾.在任何情况下都没有任何东西,但STDOUT的原始内容最终会在该流中或转储将被破坏,我会有比没有备份更坏的东西,一个糟糕的!
我正在尝试使用Sort :: Fields在perl中进行数字排序.
我看到它可以使用'n'排序,但似乎只是按第一个数字排序
说我有:
12
143
32
342
Run Code Online (Sandbox Code Playgroud)
我怎样才能按尺寸排序?如:
342
143
32
12
Run Code Online (Sandbox Code Playgroud)
注意:我也是先在另一个字段上对它进行排序:我正在尝试使用:print SORT fieldsort',',[3,'1n'],@ data;
我曾经读过以下关于"数组数组"的例子.AOA是二维阵列
声称以下代码段用refs打印整个内容
for $aref ( @AoA ) {
print "\t [ @$aref ],\n";
}
Run Code Online (Sandbox Code Playgroud)
并声称以下代码段用索引打印整个事物
for $i ( 0 .. $#AoA ) {
print "\t [ @{$AoA[$i]} ],\n";
}
Run Code Online (Sandbox Code Playgroud)
$ aref代表什么?如何理解的定义@$aref 和@{$AoA[$i]}?谢谢.