使用正则表达式从数组中删除唯一的术语

时间:2013-06-03 16:49:00

标签: regex perl

假设我有一个数组

@arr = qw( 12 2 5 bba<1s54> 10 11 )

如何从此数组中删除非数字项,在本例中为"bba<1s54>"

这个独特的“术语”格式为"bba<...>"。是否可以使用正则表达式删除它?

1 个答案:

答案 0 :(得分:6)

您只能grep数字结果:

my @arr = qw(12 2 5 bba<1s54> 10 11);
@arr = grep /^\pN+$/, @arr;

如果您确切知道要删除的内容,那么删除它会更加严格。 E.g:

@arr = grep !/bba<.*>/, @arr;