Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.01.20;
Скачать: [xml.tar.bz2];

Вниз

Удаление (в цикле) лишних знаков в 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.042 c
2-1198046858
vegarulez
2007-12-19 09:47
2008.01.20
Проблема с установкой indy 10 на D6.


15-1197736931
Dmitry S
2007-12-15 19:42
2008.01.20
Вопрос про шашки.


15-1197745816
Иксик
2007-12-15 22:10
2008.01.20
Просьба к модераторам


15-1197653273
kaif
2007-12-14 20:27
2008.01.20
Вино vs водка


15-1197917123
Катунов Юрий
2007-12-17 21:45
2008.01.20
Библиотека vcl70.bpl и компоненты с Quick Reports





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский