The CreatorCon Call for Content is officially open! Get started here.

Regex advice needed; parsing values contained with special characters

heathers_
Kilo Sage

Hello Regex experts! I need some assistance parsing email addresses in a string.

 

EX: Tester, One <tester.one@email.com>; Tester, Two<tester.two@email.com>; Tester, Three<tester.three@email.com>; Tester, Four<tester.four@email.com>

I need to extract the addresses contained within the <> characters and print into a comma separated string in order to use the below email script

 

var email_addresses_arr = current.u_original_recipient.split(",");
    var len = email_addresses_arr.length,
        i = 0;
    for (i; i != len; i += 1) {

        email.addAddress("cc", email_addresses_arr[i], "");

 

 

 

 

1 ACCEPTED SOLUTION

SAI VENKATESH
Tera Sage
Tera Sage

Hi @heathers_ 

 

You can try the below script:

var emailaddresses = "Tester, One <tester.one@email.com>; Tester, Two<tester.two@email.com>; Tester, Three<tester.three@email.com>; Tester, Four<tester.four@email.com>";// take this as dynamic 
var Regexp = /<([^>]+)>/g;
var emailvalues = [];
var match;
while ((match = Regexp.exec(emailaddresses)) !== null) {
    emailvalues.push(match[1]);
}
var allemails = emails.join(', ');
gs.print(allemails); //instead of print add the script line for the "CC"

 

Thanks and Regards

Sai Venkatesh

View solution in original post

2 REPLIES 2

SAI VENKATESH
Tera Sage
Tera Sage

Hi @heathers_ 

 

You can try the below script:

var emailaddresses = "Tester, One <tester.one@email.com>; Tester, Two<tester.two@email.com>; Tester, Three<tester.three@email.com>; Tester, Four<tester.four@email.com>";// take this as dynamic 
var Regexp = /<([^>]+)>/g;
var emailvalues = [];
var match;
while ((match = Regexp.exec(emailaddresses)) !== null) {
    emailvalues.push(match[1]);
}
var allemails = emails.join(', ');
gs.print(allemails); //instead of print add the script line for the "CC"

 

Thanks and Regards

Sai Venkatesh

Yes, this worked! 

 

 var emailaddresses = current.u_original_recipient;
    var Regexp = /<([^>]+)>/g;
    var emailvalues = [];
    var match;
    while ((match = Regexp.exec(emailaddresses)) !== null) {
        emailvalues.push(match[1]);
    }
    var allemails = emailvalues.join(', ');


    var email_addresses_arr = allemails.split(",");
    var len = email_addresses_arr.length,
        i = 0;
    for (i; i != len; i += 1) {

        email.addAddress("cc", email_addresses_arr[i], "");

    }