Почемучка)
|
|
1 | |
Выборка строк с TStringList30.06.2016, 12:37. Показов 2244. Ответов 8
Метки нет (Все метки)
Доброго времени суток.
Вопрос простой, да и сам знаю ответ - но может кто посоветует альтернативное решение и более практичное. Есть множество строк в Memo с определенной структурой . Хочу вытянуть пару Combobox ов и сделать выборку из текста с последующим его выводом в Memo Самое просто решение регулярки. Пример строк Кликните здесь для просмотра всего текста
Код
#Постоянное слово: имя1 #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово: имя2 #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово: имя3 #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово: имя4 #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово: имя5 #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово: имя6 #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,720p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка #Постоянное слово под номером 2: ,360p_ ссылка Вот и хочу сделать в комбобокс вывести все #Постоянное слово: имя# А в другой комбобокс вывести 360/720/1080/480 и при выборе в комбобоксе загружалась бы определенная структура К примеру первый комбобокс - Имя2 и второй комбобокс - 480p в Итоге в Memo Кликните здесь для просмотра всего текста
Код
#Постоянное слово: имя2 #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка #Постоянное слово под номером 2: ,480p_ ссылка Может кто подскажет решение практичное и красивое?
0
|
30.06.2016, 12:37 | |
Ответы с готовыми решениями:
8
Случайное перемещение строк в TStringList Splash screen, удаление строк в TStringList Альтернатива TStringList (проблемы с загрузкой большого кол-ва строк) E2034 Cannot convert 'TStringList' to 'TStringList *' |
Супер-модератор
|
|
30.06.2016, 12:49 | 2 |
Перечитал 2 раза - ничего не понял. "постоянное слово", "постоянное слово", "постоянное слово", "ссылка", "ссылка", "ссылка" ... Смысл поста за этим теряется. Ты бы хоть заменил все эти "постоянное слово" и "ссылка" на что-то нормальное: яблоки, бананы, кукурузу, и тогда написал бы, что есть, и что нужно получить...
1
|
Почемучка)
|
|
30.06.2016, 13:19 [ТС] | 3 |
Вот пример файла
Хочу в комбобокс получить слово (название) что после #EXTGRP: и во второй комбобокс 4 или 5 символа ( качество ) после #EXTINF:-1, это просто . Но хочу и сделать выборку если выбираю Игра престолов. Сезон 6 (BaibaKo) и качество 720p что бы получилось : Код
#EXTGRP: Игра престолов. Сезон 6 (BaibaKo) #EXTINF:-1,720p_Game.of.Thrones.s06e01.mp4 ссылка на видео #EXTINF:-1,720p_Game.of.Thrones.s06e02.mp4 ссылка на видео #EXTINF:-1,720p_Game.of.Thrones.s06e03.mp4 ссылка на видео #EXTINF:-1,720p_Game.of.Thrones.s06e04.mp4 ссылка на видео
0
|
1280 / 598 / 116
Регистрация: 18.08.2009
Сообщений: 832
|
|
30.06.2016, 13:53 | 4 |
Элементарнейше решается регулярными выражениями
Код
^#EXTINF:-1,(\d{3})p_Game.of.Thrones.s0(\d)e(\d{2}).mp4$
1
|
279 / 156 / 52
Регистрация: 30.06.2011
Сообщений: 1,712
|
|
30.06.2016, 13:57 | 5 |
0
|
Почемучка)
|
|
30.06.2016, 14:15 [ТС] | 6 |
Maluda, заполнение Combobox я сделал при формировании плейлиста. Имена ( переводы) и качества
Выборка осталось - я то понимаю как её сделать, но это получится громоздким решением с использованием и регулярок и поиском по тексту с установкой "границ" . Вот и стало интересно - как можно сделать и компактно и красиво Это то одна беда - но вот и качества у разных озвучек разные бывают , рамки особо не установить (480/360/720/1080) одна озвучка может макс в 360/480 быть ... а другая и 720/480/360
0
|
Супер-модератор
|
||||||
30.06.2016, 14:34 | 7 | |||||
Сообщение было отмечено Ddv122 как решение
Решение
Ddv122, я бы сделал так:
1
|
1280 / 598 / 116
Регистрация: 18.08.2009
Сообщений: 832
|
||||||
30.06.2016, 14:53 | 8 | |||||
Сообщение было отмечено Ddv122 как решение
Решение
1
|
Почемучка)
|
|
30.06.2016, 15:12 [ТС] | 9 |
Спасибо за подсказки : я понял ваши идеи.
У меня к сожалению BCB6 . Не StartsWith не boost нету . Пора наверное менять эту древность . Но проекты как то крупные по размеру на XE получается. Всем спасибо за помощь
0
|
30.06.2016, 15:12 | |
30.06.2016, 15:12 | |
Помогаю со студенческими работами здесь
9
Добавление строк в TStringList и нахождение количества одинаковых строк Выборка задолженностей по таблице (выборка строк с пустыми ячейкам даты оплаты) для отчета Сравнение строк в нескольких TStringList Как разбить TStringList на части по 15 строк? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |