![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Удалить определенные символы в строке
dEN © (2011-09-08 15:04:00)Есть строка такого вида:
слово1 слово2 слово3 (слово4) слово5 (слово6)
Каким образом можно удалить только первую открывающую скобку и перву закрывающую, .т.е. те скобки в которых распологается слово4, а скобки в которых слово 6 - оставить? Спасибо
Inovet (2011-09-15 21:22:00) [1]> [41] aleko © (15.09.11 20:57)
> Принцип закрепления в памяти, переназначение векторов
Рекомендую на время изучения основ Делфи забыть ассемблер.
Inovet (2011-09-15 21:20:00) [2]> [40] aleko © (15.09.11 20:37)
> где Вы сможете бахвалится перед собой Вашими ДОСТИЖЕНИЯМИ!
Это основы, обязательны к пониманию и применению с самых начал.
aleko (2011-09-15 20:57:00) [3]
> Ещё и динамическая память на каждом шагу используется
На мой взгляд, сама Win'да по определению динамична. И если мне захочется написать что-то пакостное (а зачем мне это надо?), то САМА ВИНДА НА ЭТОМ ПОСТРОЕНА! Принцип закрепления в памяти, переназначение векторов и т.д. Анатолий Подгорецкий меня поймет, он явно работал на старых машинах(DEC, CP-M,EC-1910, EC-1610)
aleko (2011-09-15 20:37:00) [4]
> > Данные между процедурами в пределах модуля передаются
> через > переменные модуля,Не надо передавать переменные
> между процедурами в пределах модуля через переменные модуля.
> Для этого придуманы параметры у процедур которые передаются
> через стек.
Господа! Вы мыслите категориям, настолько отдаленными от "Начинающих". Вам нужно сделать отдельную ветку-"Для профессионалов", где Вы сможете бахвалится перед собой Вашими ДОСТИЖЕНИЯМИ!
Модератор! Выкинь меня отсюда!
С Уважением Крапивин Олег Викторович.
Inovet (2011-09-15 20:26:00) [5]Удалено модератором
aleko (2011-09-15 20:20:00) [6]Удалено модератором
Jeer (2011-09-15 18:06:00) [7]
> Для этого придуманы параметры у процедур которые передаются
> через стек.
>
Это очевидно. Я рассказал о неочевидных вариантах :)
Palladin (2011-09-15 17:32:00) [8]
> Данные между процедурами в пределах модуля передаются через
> переменные модуля,
Не надо передавать переменные между процедурами в пределах модуля через переменные модуля. Для этого придуманы параметры у процедур которые передаются через стек.
Jeer (2011-09-15 17:20:00) [9]
> aleko © (15.09.11 17:09) [34]
Тут нет твоих врагов, тут есть советчики по делу и немного в сторону :)
Пока, что враг ты себе сам, поскольку Delphi-книжек не читаешь.
P.S.
Данные между процедурами в пределах модуля передаются через переменные модуля, между модулями - можно использовать public.переменные (свойства) модулей, либо глобалные переменные, описанные в глобальном-же модуле.
(2011-09-15 17:09:00) [10]Удалено модератором
Плохиш (2011-09-15 16:30:00) [11]
> А как передать данные между двумя процедурами
Это описано в любой книжке из серии "делфи за 21 секунду для полных идиотов".
aleko (2011-09-15 15:06:00) [12]
> совет про использование глобальных переменных - контрпродуктивный.
А как передать данные между двумя процедурами (в пределах модуля)? Ведь в списке листа оказываются те же строки, которые можно парсить хоть до одного символа. А вот насчет >1, это в АН России. У меня не стояло такой задачи.
aleko (2011-09-14 21:46:00) [13]
> зачем изобретать TStrings.DelimitedText ?
Здравтвуйте Игорь! Я изобретал под себя. Важно было время исполнения. Вали валом-там разберем. Кстати, я по моему не совсем ту процедуру привел, каюсь. Сейчас уточню.
Игорь Шевченко (2011-09-14 21:20:00) [14]зачем изобретать TStrings.DelimitedText ?
aleko (2011-09-14 21:00:00) [15]
> Непонятно, зачем ParCode не string, это не дает "парсить"
> по разделителю, состоящему из более, чем одного символа.
>
Я с Вами немного не согласен. Разбор строк с использованием разделителей больше одного(т.е. String, а не byte) на мой взгляд это частный, или академический случай. Разобрать Дж.Хедли Чейза на предложения, фразы и т.п. эта процедура вполне позволяет. Если задача требует разбор с количеством символов-определителей больше 1-го, тогда нужна другая процедура. А насчет лишней Var-не ругайте. Мобыть поторопился, не продумал
Servy (2011-09-14 04:06:00) [16]
> [27]
Пожалуйста, не учите людей плохому.
var в процедуре лишний и потенциально сбивающий с толку (переменной List никто ничего присваивать по логике процедуры не собирается), совет про использование глобальных переменных - контрпродуктивный. Непонятно, зачем ParCode не string, это не дает "парсить" по разделителю, состоящему из более, чем одного символа. Двойной вызов Pos подряд с одинаковыми параметрами в условии цикла и внутри цикла - очевидно не оптимален. Ну про стандарты оформления кода я пожалуй умолчу, тут уж на вкус и цвет.
aleko (2011-09-13 18:05:00) [17]Удалено модератором
Примечание: Калокод. Не стоит советовать ерунды.
Inovet (2011-09-09 12:02:00) [18]> [24] han_malign (09.09.11 10:19)
> slyFATperfidiousPROFESSOR
- Череззаборногузадерищенко?
- Я!
- Издуплаглазатаращенко?
- Я!
- НифигаСебеФамилии.
- Я!
han_malign (2011-09-09 10:35:00) [19]хотя с другой стороны ABet, а словарный анализ для лабы - это уже перебор...
han_malign (2011-09-09 10:19:00) [20]
> СиСи
lowerCamelCase
slyFATperfidiousPROFESSOR