Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re^3: Regex for e-mail contacts name

by flexvault (Parson)
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

lothar4ever,

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\@gmail.com, "richard" <richard\@gmail.com>, "john +" <john\@gmail.com>, <jack\@gmail.com>|;

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


Comment on Re^3: Regex for e-mail contacts name
Select or Download Code
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?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://949521]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (6)
As of 2014-10-02 08:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    What is your favourite meta-syntactic variable name?














    Results (52 votes), past polls