Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2012.03.25;
Скачать: CL | DM;

Вниз

множества   Найти похожие ветки 

 
Handle   (2011-12-12 12:45) [0]

написал функцию, которая проверяет, есть ли в строке недопустимые символы:


function HasValidChars(const Value: string; Chars: TCharSet): Boolean;
var
 Char_: PChar;
begin
 Result := False;
 Char_ := PChar(Value);
 while Char_^ <> #0 do
 begin
   if Char_^ in Chars then
     Exit;
   Inc(Char_);
 end;
 Result := True;
end;


хочу использовать ее для проверки значения атрибута name в xml-документе. допустимы символы - буквы латинского алфивита, цифры, знак подчеркивания. Можно ли как-нибудь описать допустимые символы ввиде константы, чтобы кажды раз при вызове функции не передавать ["A".."Z", "a".."z", "0".."9", "_"]?


 
Anatoly Podgoretsky ©   (2011-12-12 12:53) [1]

> Handle  (12.12.2011 12:45:00)  [0]

И какой вопрос то?


 
RWolf ©   (2011-12-12 12:57) [2]

const
 ValidChars:TCharset=["A".."Z", "a".."z", "0".."9", "_"];


 
mike   (2011-12-12 13:30) [3]


> написал функцию

А она работает правильно?

А зачем там нужен был PChar? Очень хотелось использовать адресную арифметику?


 
И. Павел ©   (2011-12-12 13:37) [4]

> if Char_^ in Chars then
>     Exit;

&laquo;not&raquo;, кажется, не хватает.


 
Ega23 ©   (2011-12-12 13:46) [5]

Был нюанс, насчёт множества Char в новых версиях Delphi.
Что-то с  CharInSet связанное. То ли надо CharInSet использовать, то ли наоборот, не надо.


 
Dennis I. Komarov ©   (2011-12-12 13:47) [6]


> mike   (12.12.11 13:30) [3]

Ctrl-C, Ctrl-V



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

Текущий архив: 2012.03.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.009 c
15-1322641571
Омлет
2011-11-30 12:26
2012.03.25
ScaleMM. Кто-нибудь использует?


15-1322644551
И. Павел
2011-11-30 13:15
2012.03.25
Как праильно задать права на таблицу (MS SQL SERVER 2005)?


2-1323679506
Handle
2011-12-12 12:45
2012.03.25
множества


2-1323507730
xrumas
2011-12-10 13:02
2012.03.25
Статистика использования символов в файле


2-1323115734
Германн
2011-12-06 00:08
2012.03.25
БД Firebird &amp; Delphi