#!/perl/bin/perl use strict; use warnings; use CGI qw/:standard/; use CGI::Carp qw(fatalsToBrowser); print header(); while () { chomp; if (/CN=\w+/) { #$_ =~ s/^(.+?"CN=.+?),.+$/$1"/; $_ =~ s/^(\w+\s,\d+,"CN=.+?),.+$/$1"/; print "$_\n"; } } __DATA__ DHCP Administrators,2,"CN=May Mary,OU=Enterprise Admins,Users,DC=INTERNETNET,DC=com Domain Admins,Users,DC=INTERNETNETCOM,DC=com",, DnsAdmins,2,"Enterprise Admins,Users,DC=INTERNETNET,DC=com CN=Arth Gure,OU=Marketing,OU=User Accounts,DC=INTERNETNET,DC=com Domain Admins,Users,DC=INTERNETCOM,DC=com",, AS400 Query Database,2,"CN=Joe Car,OU=Systems/Operations,OU=MIS,OU=User Accounts,DC=INTERNETNET,DC=com CN=Ricrad Tallar,OU=Systems/Operations,OU=MIS,OU=User Accounts,DC=INTERNETNETCOM,DC=com",, Deptpar Access,8,"CN=John Class,OU=Marketing,OU=User Accounts,DC=INTERNETNET,DC=com CN=Judy Lipa,OU=Marketing,OU=User Accounts,DC=INTERNETNET,DC=com CN=George Grey,OU=Marketing,OU=User Accounts,DC=INTERNETNET,DC=com Artur More,OU=Marketing,OU=User Accounts,DC=INTERNETNET,DC=com CN=Raimun Sirilo,OU=Executive,OU=User Accounts,DC=INTERNETNET,DC=com CN=Amilcar Ove,OU=Marketing,OU=User Accounts,DC=INTERNETNET,DC=com Daniel Santos,OU=Executive,OU=User Accounts,DC=INTERNETNET,DC=com CN=Paula Corte,OU=Executive,OU=User Accounts,DC=INTERNETNET,DC=com" Human_Resources,3,"CN=Katarine Gilly,OU=Executive,OU=User Accounts,DC=INTERNETNET,DC=com CN=Chris Head,OU=Human Resources,OU=Finance & Administration,OU=User Accounts,DC=INTERNETNET,DC=com CN=Susany Cadru,OU=Human Resources,OU=Finance & Administration,OU=User Accounts,DC=INTERNETNET,DC=com" =commnet Here are what I am expecting to get back: DHCP Administrators,2,"CN=May Mary" DnsAdmins,2,"CN=Arth Gure" AS400 Query Database,2,"CN=Joe Car,CN=Ricrad Tallar" Deptpar Access,8,"CN=John Class,CN=Judy Lipa,CN=George Grey,CN=Raimun Sirilo,CN=Amilcar Ove,CN=Paula Corte" Human_Resources,3,"CN=Katarine Gilly,CN=Chris Head,CN=Susany Cadru" =cut