2014-09-10 13 views
3

我的問題是超級簡單,但我似乎無法弄清楚。我試圖在一個看似隨機的10個字符串中找到字符'C'。但是,如果它是字符串中的第6個字符,我只關心字符'C'。如果在字符串中的第六個位置找到字符「C」,則字符串應該用破折號( - )括起來。例如:如何在ColdFusion中以字符串中的特定字符啓動'contains'決策運算符?

14CSI14550不應該用破折號括起來,因爲C是字符串中的第3個字符。 14EFEC4933應該用破折號括起來,因爲C是字符串中的第6個字符。 即使字符串中有另一個C,也應該用破折號包圍14CSIC5005。

這是我到目前爲止,我認爲我在正確的軌道與包含,但我想我需要它開始尋找C在字符串中的第5個字符,以便跳過前5字符。但我可能是錯的。

代碼:

<cfif #queryName.TenDigitNumber# contains 'C'> 
<td width="100" class=bodytext valign="top" >-#Plan.Code#-</td> 
<cfelse> 
<td width="100" class=bodytext valign="top" >#Plan.Code#</td> 
</cfif> 

這顯然圍有下,在他們與破折號包括像14CSI14550,這是不正確的所有10個字符串。任何幫助,將不勝感激!謝謝!

+0

對於一個好的措辭問題+1。 (與你的問題無關,但你可以去除cfif中的'#'符號,它們不是必需的)。 – Leigh 2014-09-10 15:15:47

+0

我讀過那個地方。這是否有特別的原因?我假設這是因爲queryName.TenDigitNumber在cf標籤中。這應該意味着它不需要#號,因爲cf知道它是一個cf變量?然後我們使用#號,當它不在cf標籤中時,HTML就知道它是一個變量?澄清會很好,謝謝! – Arcus 2014-09-10 16:13:51

+0

這可能會清除一切。 https://www.adobe.com/support/coldfusion/getting_started/using_poundsigns_quotat/using_poundsigns_quotat02.html – 2014-09-10 16:41:03

回答

12
<cfif mid(queryname.tendigitnumber, 6, 1) eq 'C'> .. do stuff .. </cfif> 
相關問題