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

Вниз

Как избавиться от пробелов в строке???   Найти похожие ветки 

 
Met   (2003-12-18 08:51) [0]

Привет всем у меня возникла такая проблема. У меня есть строковая переменная, которая заполняется данными с весов. Так вот данные выглядят так - 0.96. Эту переменную мне нужно преобразовать в др. переменную типа Real. проблема в том что из-за пробелов это не возможно. Сделать так s:=copy(s,4,4) нельзя, т.к. при большом весе эти пробелы заполняться цифрами. Помогите избавиться от этих пробелов при малом весе.


 
Digitman   (2003-12-18 08:56) [1]

см. Trim()


 
Met   (2003-12-18 09:01) [2]

Есть такая строка но она не помогает
s:=trim(copy(s,2,length(s)-2));


 
Anatoly Podgoretsky   (2003-12-18 09:04) [3]

Строки с пробелами в начале прекрасно преобразовываются в Real без каких либо дополнительных операция, ты что то делаешь неправильно.


 
Digitman   (2003-12-18 09:06) [4]

что-то непонятно ...

если имеется строка " 0.96" и после Trim она превратилась в "0.96" (готовое правильное представление для преобр-я в real), на кой шут еще какие-то copy() делать ?


 
Met   (2003-12-18 09:07) [5]

В том и проблема что в начале стоит знак " - " а только потом пробелы


 
Met   (2003-12-18 09:12) [6]

2Digitman
s:=trim(copy(s,2,length(s)-2)); Этой строкой я убираю всякий мусор и после этого s равна (- 0.96). Из-за того что в начале стоит знак минус не получается использовать trim()


 
MBo   (2003-12-18 09:14) [7]

s:=StringReplace(s," ","",[rfReplaceAll]);
или
j:=0;
for i:=1 to Length(s) do begin
if s[i]=" " then
inc(j)
else
s[i-j]:=s[i]
end;
SetLength(s, Length(s)-j);


 
Илайдж   (2003-12-18 09:15) [8]

StringReplace(s," ","",[rfReplaceAll])


 
Digitman   (2003-12-18 09:16) [9]

хм ... отрицательный вес ? в этом что-то есть))

while True do
begin
i:= Pos(" ", S);
if i = 0 then
Break
else
S[i] := "0";
end;


 
Юрий Зотов   (2003-12-18 09:17) [10]

> Met © (18.12.03 09:12) [6];

R := StrToFloat(StringReplace(S, " ", "", [rfReplaceAll]))


 
Anatoly Podgoretsky   (2003-12-18 09:19) [11]

Met © (18.12.03 09:07) [5]
Ты меняешь постановку по ходу дела, в такой постановке надо просто пробелы заменить на 0


 
Ega23   (2003-12-18 09:20) [12]


> хм ... отрицательный вес ? в этом что-то есть))

А это у него платформа весовая неоткалибрована.

> Met © (18.12.03 08:51)

Что за платформа-то? Из VPA серии? Если да, то есть наработки.


 
Met   (2003-12-18 09:24) [13]

Спасибо


 
ALEIIIKA   (2003-12-18 12:07) [14]

А так не пробовал:

while Pos(" ",s) > 0 do
Delete(s,Pos(" ",s),1);

и пробелов как не бывало.
Возможно у тебя надо изменить значение
DecimalSeparator := "."



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

Форум: "Основная";
Текущий архив: 2004.01.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.01 c
14-12124
Guest
2003-12-07 22:26
2004.01.05
Численные методы


1-11985
Serguar
2003-12-19 10:55
2004.01.05
не работают вставки с ассемблерным кодом


9-11766
X-RayMan
2003-06-12 15:02
2004.01.05
DoubleBuffer...


1-11891
GH@ST
2003-12-18 13:38
2004.01.05
TreeView определение родителя


14-12100
ZZZzzzz
2003-12-15 02:13
2004.01.05
Ну по могите же мне.....





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский