|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
04.08.2011, 10:21 | #12 |
Пользователь
Регистрация: 27.07.2011
Сообщений: 71
|
задаешь входную строку. в которой есть части типа %Artist% и т.д. затем либо функцией POS() ищешь и заменяешь, либо StringReplace(). Дело вкуса.
именно так и реализовано в том исходнике от ZuBy
Техника несовершенна: компьютеру, чтобы прийти в себя, нужно три пальца, человеку - всего два!
Последний раз редактировалось DenNik2006; 04.08.2011 в 10:31. |
05.08.2011, 17:33 | #14 |
Пользователь
Регистрация: 25.08.2009
Сообщений: 12
|
Zuby, а что если в тегах присутствует "||", тогда никакая рекурсия не спасет. Поэтому, DenNik2006, Pos() - не вариант. у АИМП'а это дело выглядит так: %IF(A, B, C). и срабатывает даже если в тегах присутсвуют запятые. тут сложновато будет...
|
05.08.2011, 20:07 | #15 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Ну не знаю... Мне кажется стоит обратить внимание на использование регулярных выражений...
I'm learning to live...
|
05.08.2011, 21:17 | #16 | |
Старожил
Регистрация: 06.08.2007
Сообщений: 2,183
|
Цитата:
|
|
05.08.2011, 23:08 | #17 |
Форумчанин
Регистрация: 26.07.2009
Сообщений: 489
|
NITROGEN_92, если не считая %IF, просто последовательно разбераешь элементы строки и анализируешь, потом необходимо как-нибудь все это склеить и все)
Для этого можно использовать массив вариантых записей, где в записи будет поле строки или идентификатора трека. А потом это все склеивается в строку и все. Насчет %IF, этой возможностью я предпологаю пользуются 0,01% пользователей и поэтому уделяйте время более существенным вещам и с развитием ПО добавите необходимый дополнительный функционал.
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
Последний раз редактировалось chertovich; 05.08.2011 в 23:10. |
06.08.2011, 11:43 | #18 | |
Участник клуба
Регистрация: 29.09.2008
Сообщений: 1,234
|
Цитата:
если в коде посмотреть, я сделал все через одно форматирование строки. т.е. сначала всю строку отформатировал, а уже потом сделал удаление $If и $Replace... если пойти следующим путем: сделать по фрагментам, не форматируя $if, $replace то можно добиться желаемого результат, только код будет в 2, 3 раза больше... тогда будет и рекурсия работать и разделяющие знаки параметров можно сделать хоть пробелы upd: еще, если менять параметры (#art#, #tit#, ...) на другие, то не используй "%" иначе функция Format будет возмущаться Последний раз редактировалось ZuBy; 06.08.2011 в 11:49. |
|
06.08.2011, 11:43 | #19 | |
Участник клуба
Регистрация: 29.09.2008
Сообщений: 1,234
|
Цитата:
|
|
06.08.2011, 19:33 | #20 | |
Пользователь
Регистрация: 25.08.2009
Сообщений: 12
|
ZuBy, спасибо большое. уже ближе к тому, что я хотел.
Цитата:
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Форматирование текста | Tomoyo | HTML и CSS | 2 | 18.07.2013 19:33 |
Форматирование текста | Arsenx777 | Работа с сетью в Delphi | 1 | 31.05.2011 14:55 |
Форматирование текста | Sergey2 | Общие вопросы Delphi | 10 | 23.09.2009 08:04 |
Форматирование текста. | Altera | Общие вопросы Delphi | 3 | 11.05.2009 23:29 |
Форматирование текста | rusif | Помощь студентам | 1 | 17.12.2007 22:28 |