Description

Replaces occurrences of the elements from a delimited list in a string with corresponding elements from another delimited list. The search is case sensitive.

Returns

A copy of the string, after making replacements.

Category

List functionsString functions

Function syntax

ReplaceList(string, list1, list2,includeEmptyFields) 
ReplaceList(string, list1, list2, delimiter, includeEmptyFields) 
ReplaceList(string, list1, list2, delimiter_list1, delimiter_list2, includeEmptyFields)

See also

FindREFindReplaceREReplace

Parameters

Parameter

Description

string

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 .

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Twitter™ and Facebook posts are not covered under the terms of Creative Commons.

Legal Notices   |   Online Privacy Policy