如何在Coldfusion中为cfloop制作多字符分隔符?

CFU*_*ser 5 string coldfusion

我有一个String变量,它有动态用户输入的文本

EX: - <cfset setPars="SPTO_DATE('04/11/2009 11:59:59 PM', 'MM/DD/YYYY HH:MI:SS AM')SP(L','MN)>'

现在如果我SP用作分隔符

在CFloop中如下

    <cfloop index="i" from="1" To="#ListLen(setPars,'SP')#">
       <br/> #ListGetAT(setPars,i,'SP')# 
    </cfloop>
Run Code Online (Sandbox Code Playgroud)

我得到输出As

TO_DATE('04/11/2009 11:59:59 

M', 'MM/DD/YYYY HH:MI: 
Run Code Online (Sandbox Code Playgroud)

但我想要

TO_DATE('04/11/2009 11:59:59 PM', 'MM/DD/YYYY HH:MI:SS AM')

(L','MN)
Run Code Online (Sandbox Code Playgroud)

Coldfusion有没有办法做到这一点?

谢谢

Ben*_*oom 11

没有直接的方法来做到这一点.但是,有几种不同的方法可以实现它.

我通常做的是用一个字符替换多字符分隔符.我通常使用铃(chr(7)),因为它不适用于标准键盘.

<cfset list = replace(setPars, 'SP', '#chr(7)#', 'all')>
Run Code Online (Sandbox Code Playgroud)

然后,您可以遍历列表:

<cfloop list="#list#" index="i" delimiters="#chr(7)#">
    <br />#i#
</cfloop>
Run Code Online (Sandbox Code Playgroud)

注意更简单的循环运算符.它会为你节省一些工作.

  • 我以同样的方式使用CHR(30)(RECORD SEPARATOR).似乎不那么危险,角色就是为此而设计的.个人喜好,我想. (2认同)