in reply to Regular Expression Help
Myself I would do it like this, I think it is more readable than regexing it all in one go
#!/usr/bin/perl use strict; use warnings; use CGI qw/:standard/; use CGI::Carp qw(fatalsToBrowser); print header(); local $/=""; while (<DATA>) { s/\n/,/sg; s/\"//g; my ($name, $number, @bits)=split /,/; my $string; for (@bits){ $string.=", \"".$_."\"" if $_=~/^CN=/; } print "$name, $number$string\n"; } __DATA__ DHCP Administrators,2,"CN=May Mary,OU=Enterprise Admins,Users,DC=INTER +NETNET,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=Use +r Accounts,DC=INTERNETNET,DC=com CN=Ricrad Tallar,OU=Systems/Operations,OU=MIS,OU=User Accounts,DC=INTE +RNETNETCOM,DC=com",, Deptpar Access,8,"CN=John Class,OU=Marketing,OU=User Accounts,DC=INTER +NETNET,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 A +ccounts,DC=INTERNETNET,DC=com CN=Susany Cadru,OU=Human Resources,OU=Finance & Administration,OU=User + Accounts,DC=INTERNETNET,DC=com" # results (without the CGI) 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 C +adru"
Cheers,
R.
|
|---|