Perl grepping类似的单词
发布时间:2020-12-16 06:18:05 所属栏目:大数据 来源:网络整理
导读:我的perl脚本中的某个变量的输出低于输出 – 输出实际上来自一些可执行文件,我在这种情况下存储在变量$retval中 – 下面的示例 my $retval=`imp_vol -u 110.5 -s 110.9 -p 0.005 -t 0.041 -c 1` Black Scholes NVol = 1.19711Black Scholes NDelta = 0.04945
|
我的perl脚本中的某个变量的输出低于输出 – 输出实际上来自一些可执行文件,我在这种情况下存储在变量$retval中 – 下面的示例
my $retval=`imp_vol -u 110.5 -s 110.9 -p 0.005 -t 0.041 -c 1` Black Scholes NVol = 1.19711 Black Scholes NDelta = 0.0494522 Black Scholes NGamma = 0.42176 Black Scholes NTheta = -0.302207 Black Scholes NVega = 0.0207006 Black Scholes Vol = 0.0108141 Black Scholes Delta = 0.049565 Black Scholes Gamma = 0.42329 Black Scholes Theta = -0.302212 Black Scholes Vega = 2.29159 这里imp_vol是我的可执行文件,具有不同的参数……它打印出不同的BLack Scholes值.现在我的目的是获得所有Black Scholes值 – 以下是我目前在perl脚本中使用的内容 – if($retval=~/s*Blacks+Scholess+Vols*=s*(.*)/i){
$vol=$1;
}
if($retval=~/s*Blacks+Scholess+Deltas*=s*(.*)/i){
$delta=$1;
}
if($retval=~/s*Blacks+Scholess+Gammas*=s*(.*)/i){
$gamma=$1;
}
if($retval=~/s*Blacks+Scholess+Thetas*=s*(.*)/i){
$theta=$1;
}
if($retval=~/s*Blacks+Scholess+Vegas*=s*(.*)/i){
$vega=$1;
}
if($retval=~/s*Blacks+Scholess+NVols*=s*(.*)/i){
$nvol=$1;
}
if($retval=~/s*Blacks+Scholess+NDeltas*=s*(.*)/i){
$ndelta=$1;
}
if($retval=~/s*Blacks+Scholess+NGammas*=s*(.*)/i){
$ngamma=$1;
}
if($retval=~/s*Blacks+Scholess+NThetas*=s*(.*)/i){
$ntheta=$1;
}
if($retval=~/s*Blacks+Scholess+NVegas*=s*(.*)/i){
$nvega=$1;
}
任何帮助都会受到鼓掌 解决方法
您可以在哈希中收集它们:
use strict;
use warnings;
my $retval = <<HERE;
Black Scholes NVol = 1.19711
Black Scholes NDelta = 0.0494522
Black Scholes NGamma = 0.42176
Black Scholes NTheta = -0.302207
Black Scholes NVega = 0.0207006
Black Scholes Vol = 0.0108141
Black Scholes Delta = 0.049565
Black Scholes Gamma = 0.42329
Black Scholes Theta = -0.302212
Black Scholes Vega = 2.29159
HERE
my %h;
while ($retval =~ /Blacks+Scholess+(S*)s*=s*(S*)/ig) {
$h{lc $1} = $2;
}
for my $k (keys %h) {
print "$k,$h{$k}n";
}
生产: ntheta,-0.302207 nvega,0.0207006 ndelta,0.0494522 vol,0.0108141 theta,-0.302212 ngamma,0.42176 nvol,1.19711 vega,2.29159 delta,0.049565 gamma,0.42329 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
