CFLib.org – Common Function Library Project

getEmails(str)

Last updated June 13, 2011
Download UDF

author

Raymond Camden

Version: 3 | Requires: CF5 | Library: StrLib

Description:
This UDF will search a string for email addresses and return the matches as a list.

Return Values:
Returns a list.

Example:

<cfset emailList = "Gerardo Trevi?o Rojas gtrevino@metro.com.mx,Guillermo Dewey <gdewey@metro.com.mx>,Ma Luisa <luisa@metro.com.mx>;sales'<info@kompressorserver.com>'">
<cfoutput>#getEmails(emailList)#</cfoutput>

Parameters:

Name Description Required
str String to search. Yes

Full UDF Source:

/**
 * Searches a string for email addresses.
 * Based on the idea by Gerardo Rojas and the isEmail UDF by Jeff Guillaume.
 * New TLDs  
 * v3 fix by Jorge Asch
 * 
 * @param str 	 String to search. (Required)
 * @return Returns a list. 
 * @author Raymond Camden (ray@camdenfamily.com) 
 * @version 3, June 13, 2011 
 */
function getEmails(str) {
	var email = "(['_a-z0-9-]+(\.['_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.((aero|coop|info|museum|name|jobs|travel)|([a-z]{2,3})))";
	var res = "";
	var marker = 1;
	var matches = "";
	
	matches = reFindNoCase(email,str,marker,marker);

	while(matches.len[1] gt 0) {
		res = listAppend(res,mid(str,matches.pos[1],matches.len[1]));
		marker = matches.pos[1] + matches.len[1];
		matches = reFindNoCase(email,str,marker,marker);		
	}
	return res;
}
blog comments powered by Disqus

Search CFLib.org


Latest Additions

Simon Bingham added
convertSecondsTo...
3 months ago

Umbrae added
fullUrlEncode
6 months ago

Mosh Teitelbaum added
minutesToUtcOffs...
7 months ago

Mosh Teitelbaum added
utcOffsetToMinut...
7 months ago

Hank van Empel added
validateIBAN
7 months ago

Created by Raymond Camden / Design by Justin Johnson