我正在尝试清理提交的文件名。
我正在使用replacelist(filename,"',##,&, ",",,and,-")
'
和#
&
替换and
-
替换空格。 给定
"apost's & pound#.JPG"
时,不返回: "aposts-and-pound.jpg"
replaceList返回:
"apostandspound-.JPG"
我正在使用ColdFusion 10。
最佳答案
这不是重新排序-这是由于CF列表处理的工作原理-空元素将被忽略/删除。
一些List〜字符串处理函数具有一个附加参数来更改此行为(即,将空元素视为空字符串),但ReplaceList似乎没有。
您可以通过在替换的单独步骤中进行删除来解决此问题:
<cfset NewFilename = rereplace(Filename,"['##]","","all") />
<cfset NewFilename = replacelist(NewFilename,"&, ","and,-") />
或者
replacelist( rereplace(filename,"['##]","","all") , "&, " , "and,-" )
关于ColdFusion replacelist重新排序返回的字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14506716/