Вниз
Скачать: CL | DM;

Вопрос по функции pos   Найти похожие ветки 

← →
Дельфятник   (2004-02-24 15:57) [0]

У меня есть функция проверки наличия цифры в строке, в которой используется функция pos. Сама функция выглядит так:

function ThereIsDigit(s: String): Boolean;
begin
Result:=(pos(s,"0")>0) or (pos(s,"1")>0) or (pos(s,"2")>0) or
(pos(s,"3")>0) or (pos(s,"4")>0) or (pos(s,"5")>0) or
(pos(s,"6")>0) or (pos(s,"7")>0) or (pos(s,"8")>0) or (pos(s,"9")>0)
end;

Проблема состоит в том, что для строки "New 760" (и не только для этой строки) эта функция возвращает значение False. Как справиться с этой проблемой?


← →
Владислав ©   (2004-02-24 16:01) [1]

Может хелп по Pos прочитать?


← →
Dimka Maslov ©   (2004-02-24 16:03) [2]

Во первых - сначала подстрока, потом строка, а во вторых..., я промолчу, а то пост удалят


← →
Anatoly Podgoretsky ©   (2004-02-24 16:06) [3]

Справка в данном случае очень бы помогла.


← →
jack128 ©   (2004-02-24 16:08) [4]


> а во вторых..., я промолчу, а то пост удалят
Ну кривовато реализованно, конечно, но ведь человек учится..


> Дельфятник (24.02.04 15:57)

Попробуй так
function ThereIsDigit(s: String): Boolean;
var
i: integer;
begin
Result := False;
for i := 1 to Length(s) do
if (s[i] >= "0") and (s[i] <= "9") then
begin
Result := True;
Exit;
end;
end


← →
MBo ©   (2004-02-24 16:08) [5]

result:=False;
for i:=1 to Length(s) do
if s[i] in ["0".."9"] then begin
result:=True;
break;
end;


← →
Дельфятник   (2004-02-24 16:17) [6]

Проблема решена. Всем большое спасибо!



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
14-12523
Knight
2004-02-11 23:45
2004.03.05
Photoshop 5


7-12565
bvn123
2003-12-17 14:46
2004.03.05
Как организовать автозапуск приложения при подключении к USB


1-12399
Alex_DM
2004-02-24 17:18
2004.03.05
Неукротимое окно???


1-12386
Максим
2004-02-25 06:04
2004.03.05
Имя системного диска


1-12422
Вованчик
2004-02-24 15:52
2004.03.05
Рекурсивная функция




   Наверх