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

Вниз

Удаление (в цикле) лишних знаков в strin-говом значении   Найти похожие ветки 

 
Konstantin   (2007-12-18 15:07) [0]

Есть переменная string примерно 8-ми значная. Как не перебирая по каждому знаку (в БД около 1500 записей, это будет очень долго), оставить на выходе только буквы и цыфры?

Спасибо.


 
Сергей М. ©   (2007-12-18 15:16) [1]

Никак.


 
Palladin ©   (2007-12-18 15:16) [2]

очень сомневаюсь, что на 1500 записей долго, вот на 15 000 000 может быть и долго


 
Сергей М. ©   (2007-12-18 15:24) [3]


> Palladin ©   (18.12.07 15:16) [2]


Смотря где и какой цикл заструячить


 
Konstantin   (2007-12-20 04:34) [4]

procedure TForm1.ReplaceDialog1Replace(Sender: TObject);

var
 SelPos: Integer;
begin
 with TReplaceDialog(Sender) do
 begin
 { Perform a global case-sensitive search for FindText in Memo1 }
   SelPos := Pos(FindText, Memo1.Lines.Text);
   if SelPos > 0 then
   begin
     Memo1.SelStart := SelPos - 1;
     Memo1.SelLength := Length(FindText);
     { Replace selected text with ReplaceText }
     Memo1.SelText := ReplaceText;
   end
   else MessageDlg(Concat("Could not find "", FindText, "" in Memo1."), mtError, [mbOk], 0);

 end;

end;


Тогда как этим пользоваться?


 
Сергей М. ©   (2007-12-20 10:47) [5]


> как этим пользоваться?


А причем здесь БД и IB6 ?


 
StriderMan   (2007-12-20 12:03) [6]

SELECT TRIM(FIELD1) FROM TABLE1

пробелы точняк отбросит, для остального придется городить че-то другое


 
Konstantin   (2007-12-20 12:18) [7]

LabPod:
      if pos("_",cod) > 0 then
       begin
        s := pos("_",cod);
        Delete(cod,s,1);
        s := pos("_",cod);
        if s > 0 then
        Goto LabPod;
       end;


Это ж сразу двойка! А как по другому? Не перебирая по знакам.


 
{RASkov} ©   (2007-12-20 12:27) [8]

> [7] Konstantin   (20.12.07 12:18)
> А как по другому?

while Pos("_", cod) > 0 do Delete(cod, Pos("_", cod), 1);
:))
StringReplace(cod, "_", "", [rfReplaceAll]); ?


 
MetalFan ©   (2007-12-20 13:18) [9]

или с пом TRegExpr:
uses RegExpr;
...
 lStr := ReplaceRegExpr("[^a-Z0-9а-Я]+", lInputStr, "" );


 
Виталий Панасенко(дом)   (2007-12-20 21:33) [10]


> Konstantin   (18.12.07 15:07)


> Как не перебирая по каждому знаку

Если ты мне объяснишь, как можно узнать, какой символ следующий, "не попробовав его на вкус и цвет" я тебе... 10 у.е. вышлю.. честно



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

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

Наверх




Память: 0.49 MB
Время: 0.33 c
1-1192791014
salexn
2007-10-19 14:50
2008.01.20
Application Server и передача Stream


15-1197729611
Jade
2007-12-15 17:40
2008.01.20
IP-адреса


9-1165649515
max3d
2006-12-09 10:31
2008.01.20
Движок проблемы с реализацией


2-1198219963
LexXL
2007-12-21 09:52
2008.01.20
проверить наличие файла на ftp


15-1197971177
ArtemESC
2007-12-18 12:46
2008.01.20
А у вас такой же ребёнок?