quotes - Parsing Exchange Recipients from a string with Regex -


i'm break down 2 operations since can't seem figure out regular expression in one. however, thought ask brain trust here see if can (which i'm sure can).

essentially have string containing recipients field email in exchange. want parse out individual recipients. don't need validate emails or anything. data comma separated except if comma in between set of quotes. that's part that's messing me up.

right i'm using: (?"[^"\r\n]*")

which gives me quoted names, , ([a-za-z0-9_-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([a-za-z0-9-]+.)+))([a-za-z]{2,4}|[0-9]{1,3})

which gives me email addresses

here's have.. data:

"george washington" <gwashington@government.net>, "abraham lincoln" <alincoln@government.net>, "carter, jimmy" <jimmy.carter@presidents.com>, "nixon, richard m." <tricky.dick@presidents.com> 

what i'd this:

"george washington" <gwashington@government.net> "abraham lincoln" <alincoln@government.net> "carter, jimmy" <jimmy.carter@presidents.com> "nixon, richard m." <tricky.dick@presidents.com> 

i dont know enough exchange pattern match exchange recipients entries.

but based on information past example. give this:

["][^"]+["][^",]+(?=[,]?)

this match entries post.

and know simple example in c# how use:

var input = "\"george washington\" <gwashington@government.net>, \"abraham lincoln\" <alincoln@government.net>, \"carter, jimmy\" <jimmy.carter@presidents.com>, \"nixon, richard m.\" <tricky.dick@presidents.com>";  var pattern = "[\"][^\"]+[\"][^\",]+(?=[,]?)";  var items = regex.matches(input, pattern)     .cast<match>()     .select(s => s.value)     .tolist(); 

if there input text pattern dont work please post input here.


Comments

Popular posts from this blog

java - Jmockit String final length method mocking Issue -

asp.net - Razor Page Hosted on IIS 6 Fails Every Morning -

c++ - wxwidget compiling on windows command prompt -