Поиск и извлечение текста из строки в Coldfusion
Я извлекаю текст из базы данных, в которой находятся различные теги.
Например:
это страница текста, здесь есть еще одна [страница =5] страница [/page] или вы можете скачать этот [document=3] документ [/document] или этот [document=4] документ [/document]
Мне нужно найти каждый тип тега и заменить его содержимое другим текстом, поэтому в этом примере независимо от того, какая папка / файл для страницы 5, и то же самое для любых документов 3 и 4.
Моей первой мыслью было просмотреть строку, сначала отыскивая [page= или [document=, а затем извлекать все после этого до], чтобы я получал идентификатор базы данных для каждого документа или страницы.
Затем я мог бы запросить в базе данных эти идентификаторы документа / страницы и заменить теги [page и [document] соответствующими ссылками и их расположением.
Но я думаю, что должен быть более эффективный способ достичь этого.
Есть ли более простой способ извлечения значений [page и [document в скажем, массив?
Тогда я мог бы просто пройтись по этому массиву, выполнить запросы к базе данных и заменить то, что мне нужно?