Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.017 c
7-94224
smu
2003-12-11 10:33
2004.02.29
Как правильно запустить программу, кот удалит которая ее удалит?


3-93815
Пубертанец
2004-02-02 16:14
2004.02.29
Ошибка при написании триггеров - deadlock


11-93825
Кладов
2003-06-06 11:41
2004.02.29
FPC: подключение ресурсов Windows


7-94200
saNat
2003-11-29 00:26
2004.02.29
Изменение приоритета процесса


3-93765
Fom
2004-02-04 10:30
2004.02.29
Как правильно обработать onValidate?




   Наверх