Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery

Re^3: Regex for e-mail contacts name

by flexvault (Monsignor)
on Jan 23, 2012 at 20:45 UTC ( #949521=note: print w/replies, xml ) Need Help??

in reply to Re^2: Regex for e-mail contacts name
in thread Regex for e-mail contacts name


You don't say where the data is coming from, so to get your $string to be what you want, you need to escape the '@' signs:

my $string = qq|sean\, "richard" <richard\>, "john +" <john\>, <jack\>|;

For this, I would use 'split': ( tested code, but re-typed from X-Terminal ):

my @email = split(/\,/,$string); for my $var( 0 .. $#email ) { print "$email[$var]\n"; ..... # put additional code here }

Now you have an array that you could use a regex or 'split' again on each element of the array in get the format you want. If the data is coming from disk, it maybe that each email address is on a line terminated with a 'CR'.

Hope this helps.

"Well done is better than well said." - Benjamin Franklin

Replies are listed 'Best First'.
Re^4: Regex for e-mail contacts name
by lothar4ever (Initiate) on Jan 23, 2012 at 20:57 UTC
    thanks for the reply but that is not what i need.
    The string is coming from an incoming email, i don't know what it is. This is why i need a regex, because all email clients send emails with different formats (Outlook uses names, Gmail is plain, Hotmail sends with <>).

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://949521]
[Discipulus]: good morning monks and nuns
[Corion]: A good morning to you too, Discipulus!
[Happy-the-monk]: Good morrow monks!

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (5)
As of 2018-04-24 06:55 GMT
Find Nodes?
    Voting Booth?