Главная страница
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.029 c
1-93986
Aliev
2004-02-17 12:17
2004.02.29
Мигалка


14-94097
Думкин
2004-02-06 05:59
2004.02.29
С днем рождения! 6 февраля.


14-94150
AZ
2004-02-03 06:22
2004.02.29
Нужна помощь в расчете пенсии (Украина).


1-93930
anod
2004-02-15 00:43
2004.02.29
Create form


9-93746
TGrigory
2003-08-16 11:05
2004.02.29
Вывод текста на поверхность DXDraw