Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2014, 01:22   #1
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию Запись в строковую переменную чисел из строки

Здравствуйте, помогите реализовать программу, в которую вводится любые символы, допустим

по12*ро45*щз99, а выводятся только

12 45 99, то есть удаляются все символы, кроме чисел, и остаются только числа,разделенные пробелами, вот мои наработки, ничего не вышло, помогите!

Код:
procedure TForm1.Button1Click(Sender: TObject);
var s:string;
   i:word;
   s1:string;
begin
  s:='';
  s1:='';
  s:=Trim(Edit1.text);
for i:=length(s) downto 1 do
if not(s[i] in ['0'..'9','*']) then Delete(s,i,1);

  s:=Trim(s);

 for i:=1 to Length(S) do
    s1:=s1+copy(s,Pos('*',s)-1,Pos('*',s))+' ';
  Edit1.Text:=s1;
end;
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 19.04.2014, 02:05   #2
XE5
Заблокирован
 
Регистрация: 02.03.2014
Сообщений: 439
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  s1, s2: string;
  i: integer;
begin
  s1 := Edit1.Text;
  for I := 1 to Length(s1) do
    begin
      if s1[i] in ['0'..'9'] then // Код для XE CharInSet(s1[i], ['0'..'9']);
        s2 := s2 + s1[i];
      if s1[i] = '*' then
        s2 := s2 + ' ';
    end;
  ShowMessage(s2);
end;
Код:
procedure TForm1.Button1Click(Sender: TObject);
var s:string;
   i:word;
   s1:string;
begin
  s:='';// лишнее
  s1:='';// лишнее

Последний раз редактировалось XE5; 19.04.2014 в 02:20.
XE5 вне форума Ответить с цитированием
Старый 19.04.2014, 02:18   #3
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

При чем тут звездочка (*)?
Arigato вне форума Ответить с цитированием
Старый 19.04.2014, 21:44   #4
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

А вообще цель программы состоит в том, чтобы создать калькулятор, в котором учавствуют столбцы таблицы Tstringgrid,
то есть в эдит вводится формула: столбец5*столбец1-столбец3, затем результирующие данные записываются в столбец, проблема в том, чтоб достать действия (+-*/ )из эдита, а в массив записать номера столбцов и применить эти действия к таблице, сейчас пытаюсь провернуть все это с умножением, пока ничего не выходит, может у кого есть ссыль на подобную проблему? Постараюсь до завтра что-то придумать и бросить сюда код
from dark to light)

Последний раз редактировалось Алексей_2012; 19.04.2014 в 22:37.
Алексей_2012 вне форума Ответить с цитированием
Старый 20.04.2014, 00:05   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

MaskEdit и рег. выражения уже не в моде?
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запись в переменную Eclipse_Me Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 20.10.2013 13:04
Запись в переменную Ardarik БД в Delphi 5 06.05.2013 20:43
Запись данных из БД в переменную Jopses PHP 12 25.03.2013 13:48
Переписать в новый файл G все строки текстового файла F, которые содержат строковую переменную S (Паскаль) pashka_dos Помощь студентам 1 29.02.2012 23:24
Запись из файла в переменную Sekt Общие вопросы C/C++ 1 20.10.2009 13:02