标签: arrays perl indexing
要获取包含/的字段中的元素索引,我使用以下内容但得到错误消息:
@ind = grep($fields[$_] =~ /\/\/]);
搜索模式未终止
答案 0 :(得分:5)
为了完整起见,这里应该是这样的(如果有问题的数组是@fields变量):
@fields
my @slash_indexes = grep { $fields[$_] =~ m~/~ } 0..$#fields;
Demo。问题中给出的代码错过了grep的第二个参数 - 应该是grepped的列表。考虑到您需要收集索引,您还需要将原始数组的索引传递到grep,而不是数组本身。
grep
答案 1 :(得分:1)
您正在逃避应该终止正则表达式的/。
/
只需删除之前的\。
\