#!/usr/bin/perl use warnings; use strict; my @data = <DATA>; @data = sort @data; #print @data; #uncomment to see sort order my $last_line = shift @data; foreach my $line (@data) { my ($last_prefix,$last_suffix) = $last_line =~ /^([a-zA-z-]+)\d.+(\.[^\.]+)$/; my ($cur_prefix,$cur_suffix) = $line =~ /^([a-zA-z-]+)\d.+(\.[^\.]+)$/; if ( $last_prefix eq $cur_prefix and $last_suffix eq $cur_suffix) { $last_line = $line; } else { print "$last_line"; $last_line = $line; } } print "$last_line"; =Prints: abc-4.2.11-8.el7_2.x86_64 samba-common-libs-4.2.12-7.el7_2.x86_64 xyz-libs-4.2.13-7.el7_2.x86_64 =cut __DATA__ samba-common-libs-4.2.10-6.2.el7_2.x86_64 samba-common-libs-4.2.10-8.el7_2.x86_64 samba-common-libs-4.2.12-7.el7_2.x86_64 samba-common-libs-4.2.10-6.el7_2.x86_64 samba-common-libs-4.2.10-3.el7_2.x86_64 xyz-libs-4.2.10-7.el7_2.x86_64 xyz-libs-4.2.12-7.el7_2.x86_64 xyz-libs-4.2.13-7.el7_2.x86_64 xyz-libs-4.2.11-7.el7_2.x86_64 abc-4.2.11-7.el7_2.x86_64 abc-4.2.11-8.el7_2.x86_64 abc-4.2.11-6.el7_2.x86_64
In reply to Re: Advanced Bubble Sort
by Marshall
in thread Advanced Bubble Sort
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |