$ perl -nE '/([^\(]+)\((.*)\)/ and $1 ne $2 and ++$seen{$2} < 2 and say "$1 : $2"' raw_data.txt Metan1_4283 : Metac1_3189 MagorCD156_00067621 : MagorUS71_00075311 Phaca1_206503 : Phchr2_2932727 Thite2_36710 : Thiar1_121068 Spoth2_47778 : Thiar1_767720 Micmi1_311120 : Micmi1_478558 Micmi1_478558 : Micmi1_311120