首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

求一简单perl的表达示语句?解决思路

2012-02-06 
求一简单perl的表达示语句?我有一数组如@shuju{129130131132133281282283}还有一组数据如Fa0/23#00 16 D

求一简单perl的表达示语句?
我有一数组如
@shuju={129
130
131
132
133
281
282
283};


还有一组数据如
Fa0/23#00 16 D3 9A CE 9E#129
Fa0/3#00 1F 16 D0 3C C7#429
Fa0/8#00 26 55 B2 86 7A#281
Fa0/5#00 1A 92 CA CC 64#430
Fa0/9#00 E0 4C 36 02 BC#283

第二个#后边的数字如129,429等和上边@shuju中数据匹配,匹配相同的删除,通过perl,最后得到如下数据
Fa0/3#00 1F 16 D0 3C C7#429
Fa0/5#00 1A 92 CA CC 64#429


在线等,谢谢



[解决办法]

Perl code
#! /usr/sbin/perl -wuse strict;my @shuju = (129, 130, 131, 132, 133, 281, 282, 283);my @data = ('Fa0/23#00 16 D3 9A CE 9E#129',                             'Fa0/3#00 1F 16 D0 3C C7#429',                             'Fa0/8#00 26 55 B2 86 7A#281',                             'Fa0/5#00 1A 92 CA CC 64#430',                             'Fa0/9#00 E0 4C 36 02 BC#283');my $exp = '#.*#(?:'.join( '|', @shuju ).')$';print "exp=$exp\n";foreach my $s (@data) {        print $s,"\n" if ( $s !~ /$exp/ );}print 'Finish!'; 

热点排行