MyChat Scripts Engine: IsStringInList

MyChat Scripts: функция IsStringInList, поиск подстроки в строке-списке

Поиск подстроки в строке-списке, между элементами которой находится какой-либо разделитель.

 

Синтаксис

function IsStringInList(sWhat, sStringList, sDelimiter: string; bIgnoreCase: boolean): boolean;

 

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

Параметр

Тип

Значение

sWhat

string

какую подстроку нужно найти;

sStringList

string

исходная строка, в которой производится поиск;

bIgnoreCase

boolean

true, если игнорировать регистр символов, false — если различие между большими и маленькими буквами имеет значение.

 

В большинстве функций MSL, которые возвращают текстовую строку с перечнем элементов, разделителем выступает символ вертикальной черты "|", однако можно использовать любые разделители, как из одного символа, так и нескольких.
 

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

True, если искомый элемент присутствует в исходной строке между разделителями.

 

Пример

const
  sFirst  = 'Blue|Red|Green|';
  sSecond = 'John Carpenter,Ivan Dulin,Sara Connor';
begin
  mLogScript('Original string "' + sFirst + '"', '');
  
    if IsStringInList('red', sFirst, '|', true) then mLogScript('"red" found', '')
      else mLogScript('"red" not found', '');
  
    mLogScript('Original string "' + sSecond + '", case sensitive search', '');
  
    if IsStringInList('sara connor', sSecond, ',', false) then mLogScript('"sara connor" found', '')
      else mLogScript('"sara connor" not found', '');
end.

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

[16:08:24] (Log "IsStringInList"): Original string "Blue|Red|Green|"

[16:08:24] (Log "IsStringInList"): "red" found

[16:08:24] (Log "IsStringInList"): Original string "John Carpenter,Ivan Dulin,Sara Connor", case sensitive search

[16:08:24] (Log "IsStringInList"): "sara connor" not found
 

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

mLogScript