Вниз
Скачать: 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
1-12411
Budy
2004-02-22 22:11
2004.03.05
TMemo


3-12270
ligor
2004-02-08 21:34
2004.03.05
есть возможность в одном SQL запросе обратиться к разным БД


6-12465
Александр из Минска
2003-12-27 16:05
2004.03.05
IdTCPServer


1-12322
Lena19
2004-02-22 21:35
2004.03.05
как убить объект (самого себя)


4-12587
alex_***
2003-12-30 15:18
2004.03.05
из hdc получить HWND его окна




   Наверх