Подскажите, пожалуйста, как правильнее перевести программу с Паскаля на С# - C#
Формулировка задачи:
Подскажите, пожалуйста, как перевести программу из Pascal в C#
procedure AnalizeIdentifier(StrTmp : string); const //Множество цифр. Digits = ['0'..'9']; //Множество разрешённых символов - те которые могут участвовать в записи идентификатора. ResolvChars = ['_','a'..'z', 'A'..'Z'] + Digits; var i : Integer; IsIdentifier : boolean; //Флаг, показывающий является ли анализируемая строка идентификатором begin //Запускаем цикл последовательной обработки символов строки. IsIdentifier := True; for i := 1 to Length(StrTmp) do begin if //Текущий символ не принадлежит множеству разрешённых для индентификаторов символов. not ( StrTmp[i] in ResolvChars ) //Либо текущий символ является первым символом строки и является цифрой. or ( (i = 1) and (StrTmp[i] in Digits) ) then begin //Тогда данная строка не является идентификатором Pascal. IsIdentifier := False; //Выходим из цикла. Break; end else begin //Тогда данная строка не является идентификатором Pascal. IsIdentifier := False; //Выходим из цикла. Break; end; end; end;
Решение задачи: «Подскажите, пожалуйста, как правильнее перевести программу с Паскаля на С#»
textual
Листинг программы
using System; using System.Text.RegularExpressions; class Program { public static void Main() { Regex regex = new Regex(@"\A[_a-z][_a-z0-9]*\z", RegexOptions.IgnoreCase); foreach (string s in new string[] { "abc_123", "_xyz456", "0_0", "Ы" }) { Console.Write(s); Console.WriteLine(regex.IsMatch(s) ? " - корректный" : " - некорректный"); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д