MyChat Scripts Engine: RegExpIsMatch

MyChat Scripts: RegExpIsMatch, соответствие строки регулярному выражению

Проверка, соответствует ли заданная строка регулярному выражению (regular expression).

 

Синтаксис

function RegExpIsMatch(sInpString, sRegExp: string): boolean;

 

Параметры и возвращаемые значения

Параметр

Тип

Значение

sInpString

string

строка, которую необходимо проверить на соответствие;

sRegExp

string

текст регулярного выражения.

 

Результат функции

True, если строка соответствует заданному регулярному выражению, false — если нет.

 

Пример

procedure Check(const sInput: string);
var
  bFlag: boolean;
  s: string;
begin
  bFlag := RegExpIsMatch(sInput, '^\s*[-+]?[0-9]*\.?[0-9]+\s*$');
  
    if bFlag then s := 'TRUE'
      else s := 'FALSE';
      
  mLogScript(sInput, s);
end;

begin
  mLogScript('Regular expression for value of string validation', '');
  
  Check('2.334');
  Check('150.2');
  Check('0.23');
  Check('3');
  Check('3..42');
  Check('4-2.3');
  Check('e5.64');
  Check('3 145');
end.

Результат работы скрипта

[10:55:00] (Log "RegExpIsMatch"): Regular expression for value of string validation

[10:55:00] (Log "RegExpIsMatch"): [TRUE] 2.334

[10:55:00] (Log "RegExpIsMatch"): [TRUE] 150.2

[10:55:00] (Log "RegExpIsMatch"): [TRUE] 0.23

[10:55:00] (Log "RegExpIsMatch"): [TRUE] 3

[10:55:00] (Log "RegExpIsMatch"): [FALSE] 3..42

[10:55:00] (Log "RegExpIsMatch"): [FALSE] 4-2.3

[10:55:00] (Log "RegExpIsMatch"): [FALSE] e5.64

[10:55:00] (Log "RegExpIsMatch"): [FALSE] 3 145

[10:55:00] (Run "RegExpIsMatch"): Время выполнения скрипта: 13 мс

[10:55:00] (Run "RegExpIsMatch"): Скрипт выполнен успешно.

 

Ещё посмотреть

mLogScript