Конференции:  3D графика Delphi Игры Бизнес Потрепаться PHP&MySQL QuarkXPress Turbo Pascal WEB-дизайн 
<<<    Конференция "Delphi"   >>>
SDW_syscoder [2003-12-01 08:56:20]
Работа со строкой
Нужна функция, которая удаляет в строке тетрады [3030], стоящие на нечётных позициях
[ 3030 3930 3030 3936 3030 3933 3030 3841 3030 3835 3030 ] (тетрады разбиты пробелыми для наглядности).
Поиск в строке и замена не получится, если присмотритесь, то увидите.

Man in Black ® [2003-12-01 20:39:33]    [1]
Рекомендую что-то вроде:
While Odd(Pos('3030', Stroka)) Do
 Begin
 StringReplace(Stroka, '3030 ','',[]);
 StringReplace(Stroka, '3030 ','ХХХХ',[]);
 End;
StringReplace(Stroka, 'ХХХХ','3030',[rfReplaceAll]);


Старый еврей [2003-12-01 22:50:35]    [2]
Этот код будет работать только в случае, если четная 3030 идет вослед нечетной. Я бы добавил условие:

While Odd(Pos('3030', Stroka)) Do
 Begin
 Stroka:=StringReplace(Stroka, '3030 ','',[]);
 While Odd(Pos('3030', Stroka))=FALSE Do
  Begin
   Stroka:=StringReplace(Stroka, '3030 ','ХХХХ',[]);
   End;
 End;
Stroka:=StringReplace(Stroka, 'ХХХХ','3030',[rfReplaceAll]);

А вообще мысль правильная. :))

74465 [2004-05-26 04:54:08]    [3]
Удалено модератором

SomeOne [2006-07-04 03:20:34]    [4]
Удалено модератором

--//-- ° [2006-07-04 03:21:37]    [5]
Удалено модератором

тина [2006-12-20 02:41:42]    [6]
Удалено модератором


ПОДПИСАТЬСЯ НА ТЕМУ

E-mail
7+8?



приветя улыбаюсьхадаподмигиваюя тащусьмое почтениесчастливоцелуюбухаемужас
не понялплачуфупечальзлойстесняюсьсогласеннетгыкурю
суперязыкмузонпыворыдаю


Ваше имя: 
     Осталось: 

 

Допускается форматирование текста:
[•B]полужирный[B•] [•I]наклонный[I•] [•U]подчеркнутый[U•] [•‹]URL картинки[›•].
Для кода программ используйте [•¤] код программы [¤•]
Количество открывающих и закрывающих тэгов форматирования текста должно быть равным, иначе форматирование не осуществится.


Adelavida Link       Рейтинг@Mail.ru