поиск и извлечение текста из строки в coldfusion

Я извлекаю текст из базы данных, в которой находятся различные теги.

Например:

это страница текста, здесь есть другая [page=5]страница[/page] или вы можете скачать этот [document=3]документ[/document] или этот [document=4]документ[/document]

Мне нужно найти каждый тип тега и заменить его содержимое другим текстом, поэтому в этом примере любая папка/файл для страницы 5 и то же самое для любых документов 3 и 4.

Моей первой мыслью было просмотреть строку, сначала ища [page= или [document=], а затем извлечь все после этого до ], чтобы получить идентификатор базы данных для каждого документа или страницы.

Затем я мог бы запросить в базе данных идентификаторы этих документов/страниц и заменить теги [page и [document] правильными ссылками и их расположением.

Но я думаю, что должен быть более эффективный способ добиться этого.

Есть ли более простой способ извлечения значений [страницы и [документа], скажем, в массив?

Тогда я мог бы просто просмотреть этот массив, выполнить запросы к базе данных и заменить то, что мне нужно?


person luke    schedule 28.09.2014    source источник
comment
Не могли бы вы поделиться своим окончательным кодом, чтобы помочь следующему парню? :)   -  person Leigh    schedule 30.09.2014
comment
Я еще не делала, но когда сделаю обязательно выложу   -  person luke    schedule 02.10.2014


Ответы (1)


Вы, наверное, хотите реванша. Он вернет массив совпадений.

person Raymond Camden    schedule 29.09.2014
comment
Спасибо, Рэймонд, а также спасибо за ваш блог - я часто оказываюсь там, когда ищу решение для чего-то! - person luke; 29.09.2014