我正在努力教自己ColdFusion.
我有一个以这种格式从数据库进来的字符串:
domain.com
<br/>
www.facebook.com/facebookpage
<br/>
http://instagram.com/instagrampage
Run Code Online (Sandbox Code Playgroud)
它全部来自#getRacer.txtDescription#.此文本的格式将始终相同.
我需要将它分成3个变量.我试过这个(源自adobe网站上的例子)
<h3>ListToArray Example</h3>
<cfset myList = ValueList(getRacer.txtDescription)>
<p>My list is a list with <cfoutput>#ListLen(myList)#</cfoutput> elements.
<cfset myArrayList = ListToArray(myList,'<br/>')>
<p>My array list is an array with
<cfoutput>#ArrayLen(myArrayList)#</cfoutput> elements.
Run Code Online (Sandbox Code Playgroud)
我不知何故最终得到了数组中的11个项目.
谢谢
小智 26
这应该工作.
<cfset TestSTring = "domain.com<br/>www.facebook.com/facebookpage<br/>http://instagram.com/instagrampage">
<cfset a = TestString.Split("<br/>")>
Run Code Online (Sandbox Code Playgroud)
原因ListtoArray是显示11个项目是因为ColdFusion将分隔符字符串(<br/>)中的每个字符视为单独的分隔符
基于@Leigh的评论更新我的答案以确保人们应该学习Coldfusion API而不是摆弄Java函数,<cfset a = ListToArray(TestString, "<br/>", false, true)>这也是有效的.谢谢Leigh.
注:在false末是针对includeEmptyFields标志和true是为multiCharacterDelimiter标志.查看文档.