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

Вниз

Преобразование строки..   Найти похожие ветки 

 
AlexDan ©   (2009-07-01 21:02) [0]

Подскажите пожалуйста, по моему есть функция, преобразующая смешанную строку в число, т.е. парралдв1234длавдл = 1234.


 
AlexDan ©   (2009-07-01 21:03) [1]

?


 
Сергей М. ©   (2009-07-01 21:13) [2]

Ты очумел ?)

КАК можно преобразовать в число галиматью вида "1адын2дыва3тры" ?
Только не говори, что это не "смешанная строка"))


 
{RASkov} ©   (2009-07-01 21:16) [3]

Если даже и нет в чем проблема? Трудно свою забабахать?)


 
AlexDan ©   (2009-07-01 21:17) [4]

ну значит нет, просто по моему была вроде.), ага, вроде придумал, сам наверно напишу (под себя))..


 
{RASkov} ©   (2009-07-01 21:21) [5]

function GetAllDigitsFromString(AStr: String): Integer;{Float}
begin
 //тут нужно убрать из AStr все символы, что не цифры...
 try
  Result:=StrToInt(AStr);
 except
  Result:=0;
 end;
end;


 
Сергей М. ©   (2009-07-01 21:22) [6]


> ага, вроде придумал


И в какое же число придуманная тобой функция преобразует смешанную строку, т.е. 1адын2дыва3тры = ?


 
{RASkov} ©   (2009-07-01 21:23) [7]

> [6] Сергей М. ©   (01.07.09 21:22)

Он же вроде пример привел в [0] :)

> т.е. парралдв1234длавдл = 1234

соответстсенно:

> 1адын2дыва3тры = ?

123


 
Сергей М. ©   (2009-07-01 21:30) [8]


> {RASkov} ©   (01.07.09 21:23) [7]


Это почему же 123 ?
А я утверждаю, что 112233)..
И попробуй возрази, что такое "преобразование" противоречит [0])


 
{RASkov} ©   (2009-07-01 21:43) [9]

> Это почему же 123 ?
> А я утверждаю, что 112233)..

ну и то и другое реально, только 123 - просто, а 112233 - годы труда. :)


 
AlexDan ©   (2009-07-01 23:53) [10]

> {RASkov} ©   (01.07.09 21:21) [5]
>  //тут нужно убрать из AStr все символы, что не цифры...
Вот спасибо:))), вот это особенно ценно..)., {кто б мог подумать..;)}
> Сергей М.
> 1адын2дыва3тры
вот уж действительно даже годы труда скорее всего вряд ли дадут что-то другое чем 123)..


 
Германн ©   (2009-07-02 00:57) [11]


> > 1адын2дыва3тры
> вот уж действительно даже годы труда скорее всего вряд ли
> дадут что-то другое чем 123)..
>

А сколько лет тебе нужно, чтобы нормально сформулировать вопрос?
Типа "Как убрать из строки все символы, что не цифры"?


 
RWolf ©   (2009-07-02 10:24) [12]


> ну значит нет, просто по моему была вроде

Есть похожая функция, Val называется. Но ей нужно, чтобы до собственно цифр строка содержала пробелы, произвольные символы не прокатят.


 
Юрий Зотов ©   (2009-07-02 11:51) [13]

Не надо убирать из строки никаких символов - это приведет к многократной переписке памяти, что очень неэффективно. Делается проще:

Result := 0;
for i := 1 to Lengtn(S) do
 if S[i] in ["0".."9"] then
   Result := Result * 10 + Ord(S[i]) - Ord("0");



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

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

Наверх





Память: 0.47 MB
Время: 0.005 c
1-1212999896
Separator
2008-06-09 12:24
2009.08.30
Построение и расчет графов


2-1246188107
Michael
2009-06-28 15:21
2009.08.30
Блокирующие сокеты


2-1246543590
Eugene1501
2009-07-02 18:06
2009.08.30
Как проверить бит


2-1246696231
Gray
2009-07-04 12:30
2009.08.30
Ккак узнать номер выделенной строки в DBGrid?


15-1245952925
Nodt
2009-06-25 22:02
2009.08.30
Поиск работы.





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