|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
22.03.2014, 21:37 | #11 |
Заблокирован
Регистрация: 02.03.2014
Сообщений: 439
|
Или я чего-то недопонял, или все хором забыли о регулярке? По поводу последнего кода не в обиду, но ужас и кошмар. Восемь переменных под такую простую задачу это охренеть какой перебор. Вручную это всё делается намного проще.
Код:
P.S Вопрос на засыпку Код:
Последний раз редактировалось XE5; 22.03.2014 в 21:45. |
22.03.2014, 22:16 | #12 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
удаление из строки крайне не эффективная операция в плане производительности (хотя и вполне практически вполне допустимо использовать такой подход, если длина строки не очень большая, скажем, не превышает десятки тысяч символов), я бы предложил решение через использование PosEx
примерно так: Код:
Последний раз редактировалось Serge_Bliznykov; 22.03.2014 в 22:31. |
22.03.2014, 23:19 | #13 |
Заблокирован
Регистрация: 02.03.2014
Сообщений: 439
|
Serge_Bliznykov Есть мнение, что AnsiUpperCase сожрёт весь прирост скорости, и ВОЗМОЖНО в итоге Ваш код проиграет в производительности моему .
P.S. Не знал о функции PosEx. Любопытно... Хотя можно и без неё написать такой же код без Delete через Copy и доп. String. Последний раз редактировалось XE5; 22.03.2014 в 23:22. |
22.03.2014, 23:24 | #14 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
22.03.2014, 23:27 | #15 |
Заблокирован
Регистрация: 02.03.2014
Сообщений: 439
|
Аватар И в итоге оба кода можно поправить и слегка поднять производительность.
P.S. Кто бы мне под мои задачи давал по два варианта решений... |
22.03.2014, 23:30 | #16 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Все можно. По хорошему и при использовании Delete тоже нужно приводить к одному регистру. Гарантии то нет, что везде <p>. А Delete и правда очень затратная, без вариантов
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
22.03.2014, 23:35 | #17 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,596
|
Код:
E-Mail: arigato.freelance@gmail.com
|
22.03.2014, 23:44 | #18 |
Заблокирован
Регистрация: 02.03.2014
Сообщений: 439
|
Delete как я понимаю, это цикличный сдвиг элементов массива строки влево, и изменение длины массива? И собственно из за цикла снижение производительности. Верно?
|
23.03.2014, 10:24 | #19 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
23.03.2014, 14:00 | #20 |
Заблокирован
Регистрация: 02.03.2014
Сообщений: 439
|
Stilet Тогда с какого перепуга Delete стал ресурсоёмкой операцией?
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Парсинг | Gudzik11 | Общие вопросы Delphi | 6 | 15.04.2012 21:51 |
парсинг | Pein95 | C# (си шарп) | 3 | 16.09.2011 01:24 |
Парсинг | DeDoK | Общие вопросы Delphi | 8 | 02.02.2011 14:20 |