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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.003 c
2-1323524421
oksana
2011-12-10 17:40
2012.03.25
функция


15-1322425802
Юрий
2011-11-28 00:30
2012.03.25
С днем рождения ! 28 ноября 2011 понедельник


15-1322328053
картман
2011-11-26 21:20
2012.03.25
что бы почитать?


2-1323292381
popopo
2011-12-08 01:13
2012.03.25
Построение древа выражения


15-1322570922
OW
2011-11-29 16:48
2012.03.25
Откуда пробел?





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