【问题标题】:Remove the first part of string删除字符串的第一部分
【发布时间】:2018-12-07 01:55:49
【问题描述】:

我有一个包含一些字符串的数组(这里以三个为例):

@array = ("Foo", "Bar", "Baz");

我有另一个数组,其中包含以下形式的数千个元素,

@senocndArray = (test/Foo/the_Rest_of_string, test/Bar/the_Rest_of_string, test/Baz/the_Rest_of_string)

现在我要做的是删除以下for循环中的test/$element部分

for my $element(@array){
    my $string = "test/$element";
    for $secondElement(@senocndArray){
        # delete the $string part of each element of @senocndArray
    }
}

在第二个循环中,我想删除第一部分并将其保存在另一个数组中或覆盖$secondElement。我试过了

$secondElement =~ s/$string //;

但这对我不起作用。有人可以帮助我知道我的错误在哪里吗?

【问题讨论】:

  • 尝试使用use warnings; use diagnostics; 获得一些提示。
  • @Сухой27 我有,我已经写了显示我的问题的主要部分。

标签: arrays string perl


【解决方案1】:
$secondElement =~ s/$string //;
#                          ↑

“$string”后面多了一个空格

【讨论】:

  • 额外空间是什么意思?我什么都没看到!
  • Royeh,我已编辑答案以包含向上箭头 以标记代码中空格的位置。这有帮助吗?
  • @daxim 哦,是的,这真是一个很棒的提示! ;)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-03-31
  • 2012-11-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多