繁体   English   中英

搜索在Perl中替换为数组

[英]Search Replace in array in perl

我有一个数组,如果数组中存在特定值,我想替换一个特定值。

排列

my @array_list = ('TEST12','TEST14','TEST','TEST23');

我试过的是:

foreach (@array_list) { 
    if($_ eq "TEST"){
        $_ =~ s/$_/HT/;
    }
 } 

还有其他更好的方法可以做到这一点。请帮助我

假设您只想就地替换单个完全匹配项:

use strict;
use warnings;

my @array_list = ('TEST12','TEST14','TEST','TEST23');

$_ eq 'TEST' and $_ = 'HT' for @array_list;

use Data::Dump;
dd @array_list;

输出:

("TEST12", "TEST14", "HT", "TEST23")

可以使用正则表达式完成相同的操作:

s/\ATEST\z/HT/ for @array_list;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM