2010-09-23 16 views
0

У меня есть следующие:ColdFusion | Сплит базы данных Строка

<dd> 
    <select id="contactLocation" name="contactLocation" size="1"> 
     <option value="Online"<cfif attributes.contactLocation eq "Online">selected</cfif>>Online</option> 
     <cfoutput query="storeLocations"> 
     <option value="#storeLocations.name#"<cfif attributes.contactLocation eq "#storeLocations.name#">selected</cfif>>#storeLocations.state# - #storeLocations.city#, #left(storeLocations.storeID, 3)#</option> 
    </cfoutput> 
    </select> 

Я добавил две верхние cfset переменные, как я пытался понять это. Строка в базе данных возвращает 111/NAME, и я хочу удалить переднюю косую черту и все остальное справа от нее.

В настоящее время с двумя переменными я добавил, что он просто возвращает первые 3 символа, но он отображает только одну строку для каждого отдельного элемента в раскрывающемся списке.

Как удалить слэш и все справа от него в пределах #storeLocations.storeID#

UPDATE:

На самом деле сейчас у меня это отобразить все 3 символов в строке, но что, если есть только 2 или 4? Я близка, мне просто нужна последняя часть.

ответ

6

Если разделитель ВСЕГДА символ «/» и «/» символ не появится ни в одном лексема, думаю, этого значения в виде списка с «/» разделителем и просто получить последний элемент с listLast:

listLast(storeLocations.storeID, "/") 

Если вторая часть может иметь «/» в нем, но первая часть никогда не будет, поскольку его количества, то вы можете просто избавиться от первых маркеров с помощью listRest:

listRest(storeLocations.storeID, "/") 

Редактировать: Поскольку я не могу сказать свое право слева от меня ...

listFirst(storeLocations.storeID, "/") 
+1

Функции списка ОЧЕНЬ мощные, если вы можете представить строку в виде списка. Хотя в этом случае я думаю, что он хочет ListFirst() – ale

+0

Мне нужна была первая часть, а не последняя часть, но я понял, что 'listFirst' будет работать, и это было! Большое спасибо. – balexander

+0

OH, мой ВОЕННО! Исправлена! –