Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.29;
Скачать: CL | DM;

Вниз

StringReplace   Найти похожие ветки 

 
Wild   (2004-02-16 13:46) [0]

Здравствуйте все! Поскольку с Дельфи я только начинаю находить общий язык, мой вопрос может показаться вам глупым :)
Мне нужно в строке поменять все вхождения "/" на "_". Для этого я обратился к функции StringReplace, но есть некоторые проблемки: 1)она меняет только первое вхождение; 2)там по синтаксису есть какой-то флаг StringReplace(str, "/", "_", []), в котором, может быть это как-то определяется, но в той литературе, которая у меня есть, эта функция вообще не описана; 3)на этом сайте я видел пример, где используется эта функция вообще без флага (?) а еще функция StringReplaceAll - может быть, это то, что мне нужно?
Заранее спасибо за все ответы! :)


 
Romkin ©   (2004-02-16 13:49) [1]

а F1 нажать трудно?
StringReplace(str, "/", "_", [rfReplaceAll])


 
zamkom ©   (2004-02-16 14:01) [2]

Можно сделать вот так:
while Pos("/",S) > 0 do S[Pos("/",S)] := "_";
Просто и незамысловато.


 
Radionov Alexey ©   (2004-02-16 14:12) [3]

>zamkom © (16.02.04 14:01) [2]

Просто и незамысловата сложность порядка O(n) превращается в сложность O(n^2) :)


 
MBo ©   (2004-02-16 14:13) [4]

>zamkom
>Просто и незамысловато.
Уж слишком незамысловато ;)
Зачем делать Length^2 операций, если достаточно просто в цикле for пробежаться по строке и заменить символы.


 
MBo ©   (2004-02-16 14:14) [5]

>Radionov Alexey
Ага, тоже закипел разум возмущенный ;-)


 
Radionov Alexey ©   (2004-02-16 14:16) [6]

>MBo © (16.02.04 14:14) [5]
Угу :)))
PS
Щас нас выпрут за личную переписку.


 
Amoeba ©   (2004-02-16 16:15) [7]

Посмотри бесплатную библиотеку ф-ий для работы со строками QSrtings
http://www.torry.net/vcl/vcltools/text/adqstrings.zip


 
Wizard_Ex ©   (2004-02-16 16:46) [8]

StringReplace(AText, "##", #13+#10,[rfReplaceAll]+[rfIgnoreCase]);

Усе работает. В чем сложность то?


 
Wild   (2004-02-16 18:32) [9]

Спасибо всем! А насчет [1] - я искал в дельфийском хэлпе, не нашел ничего. Или я чего-то не понимаю?.. :)



Страницы: 1 вся ветка

Текущий архив: 2004.02.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
1-93898
Tatyana
2004-02-16 00:37
2004.02.29
Событие.


1-93951
anbezr
2004-02-18 17:56
2004.02.29
как выполнить Bring To Front


14-94182
Кен
2004-02-05 04:06
2004.02.29
LindowsOS можно скачать бесплатно через Р2Р-сети


3-93774
EugenePichugin
2004-02-03 18:11
2004.02.29
Вызов хранимой процедуры Oracle из Delphi


1-94017
ИМХО
2004-02-18 15:03
2004.02.29
CreateOleObject( Word.Application )