Replaces occurrences of the elements from a delimited list in a string with corresponding elements from another delimited list. The search is case sensitive.
A string, or a variable that contains one, within which to replace substring
list1
Comma-delimited list of substrings for which to search
list2
Comma-delimited list of replacement substrings
delimiter
Common delimiter for both search and replacement.
delimiter_list1
Delimiter for search.
delimiter_list2
Delimiter for replacement.
includeEmptyFields
When true, empty list elements are preserved.
Usage
The list of substrings to replace is processed sequentially. If a list1 element is contained in list2 elements, recursive replacement might occur. The second example shows this.
Example
<p>The ReplaceList function returns <I>string</I> with
<I>substringlist1</I> (e.g. "a,b") replaced by <I>substringlist2</I>
(e.g. "c,d") in the specified scope.
<cfif IsDefined("FORM.MyString")>
<p>Your original string, <cfoutput>#FORM.MyString#</cfoutput>
<p>You wanted to replace the substring <cfoutput>#FORM.MySubstring1#
</cfoutput>
with the substring <cfoutput>#FORM.MySubstring2#</cfoutput>.
<p>The result: <cfoutput>#Replacelist(FORM.myString,
FORM.MySubstring1, FORM.mySubString2)#</cfoutput>
</cfif>
<form action = "replacelist.cfm" method="post">
<p>String 1
<br><input type = "Text" value = "My Test String" name = "MyString">
<p>Substring 1 (find this list of substrings)
<br><input type = "Text" value = "Test, String" name = "MySubstring1">
<p>Substring 2 (replace with this list of substrings)
<br><input type = "Text" value = "Replaced, Sentence" name = "MySubstring2">
<p><input type = "Submit" value = "Replace and display" name = "">
</form>
<h3>Replacelist Example Two</h3>
<cfset stringtoreplace = "The quick brown fox jumped over the lazy dog.">
<cfoutput>
#ReplaceList(stringtoreplace,"dog,brown,fox,black", "cow,black,ferret,white")#
</cfoutput>
Example with delimiter to both the lists
<h3>Replacelist Example One</h3>
<cfset stringtoreplace = "The quick brown fox jumped over the lazy dog.">
<cfoutput>
#ReplaceList(stringtoreplace,"dog:brown:fox:black", "cow:black:ferret:white", ":")#
</cfoutput>
This example returns the following string:
The quick white ferret jumped over the lazy cow.
Example with delimiter specific to individual lists
<h3>Replacelist Example Two</h3>
<cfset stringtoreplace = "The quick brown fox jumped over the lazy dog.">
<cfoutput>
#ReplaceList(stringtoreplace,"dog:brown:fox:black", "cow-black-ferret-white", ":" ,
"-")#
</cfoutput>
This example returns the following string:
The quick white ferret jumped over the lazy cow.
Example with includeEmptyFields = true
<h3>Example when includeEmptyFields is true</h3>
<cfset stringtoreplace = "The quick brown fox jumped over the lazy dog.">
<cfoutput>
#ReplaceList(stringtoreplace, "dog:brown:fox:black", "--black-ferret-white", ":", "-", true)#
</cfoutput>
This example returns the following string:
The quick ferret jumped over the lazy .
Example with includeEmptyFields = false
<h3>Example when includeEmptyFields is false</h3>
<cfset stringtoreplace = "The quick brown fox jumped over the lazy dog.">
<cfoutput>
#ReplaceList(stringtoreplace, "dog:brown:fox:black", "--black-ferret-white", ":", "-", false)#
</cfoutput>
This example returns the following string:
The quick ferret white jumped over the lazy .
Twitter™ and Facebook posts are not covered under the terms of Creative Commons.