Можно ли разделить массив на два разделенных друг на друга с каждым элементом исходного массива, разделенным символом «:»? Текст перед «:» идет в array1, текст после «:» идет к массив2Coldfusion разбивает массив на два
<cfset tempArr = DeserializeJSON(URL.data) />
<cfset selectList = "" />
<cfloop array=#tempArr# index="i">
<cfset selectList = listappend(selectList,i) />
</cfloop>
Сейчас этот код захватывает весь элемент, а не по отдельности.
Редактировать
Строка образца будет:
first_name: Боб
first_name переходит в selectList1 Боб переходит в selectList2
Грандиозный схема вещей будет иметь другие поля также:
first_name: Боб
last_name: Шмо
Возраст: 27
и т.д ...
EDIT: ответ
Проблема была решена путем использования кода
<!---Variables--->
<cfset temp1 = "" />
<cfset temp2 = "" />
<cfset selectList1 = "" /><!---Holds column names for tables--->
<cfset selectList2 = "" /><!---Holds query parameters for column names. Ie,
values for use in the WHERE clause--->
<cfloop array=#tempArr# index="i"><!---Loop through contents of the array--->
<cfset temp1 = GetToken(i,1,":")/><!---Store the column name--->
<cfset temp2 = GetToken(i,2,":")/><!---Query parameter--->
<cfset selectList1 = listAppend(selectList1, temp1)/><!---Adds to list of column names--->
<cfset selectList2 = listAppend(selectList2, temp2)/><!---Adds to the list of query parameters--->
</cfloop>
+1 Я просто печатая аналогичный ответ. Ты подтолкнул меня на это. –
Не совсем, я ищу первый элемент, как до, так и после ":", а не первый/последний элемент – Zac
FYI: Еще один вариант - использование 'getToken'. Его преимущество перед 'listFirst/Last' - вам не нужно проверять длину. 'getToken' возвращает пустую строку, если данный элемент списка не существует. В этом случае, если он имеет менее двух элементов. – Leigh