diff --git a/src/Qsp.FSharp.Core/Defines.fs b/src/Qsp.FSharp.Core/Defines.fs index 2fefb6d..976cec9 100644 --- a/src/Qsp.FSharp.Core/Defines.fs +++ b/src/Qsp.FSharp.Core/Defines.fs @@ -1127,7 +1127,57 @@ let procedures = "`WAIT [#выражение]` - остановка выполнения программы на заданное количество миллисекунд (1 секунда = 1000 миллисекунд)." ] |> String.concat "\n" "wait", dscr, arg Numeric + let dscr = + [ + "`ScanStr $resultArray, $inputString, $pattern, [#groupNumber]` — процедура, которая разбирает входную строку на подстроки с помощью регулярного выражения." + "" + "## Параметры" + "" + "* `$resultArray` — название массива, в который будет записываться найденные подстроки" + "* `$inputString` — входная строка, в которой будут искаться подстроки" + "* `$pattern` — шаблон регулярного выражения" + "* `#groupNumber` — опциональный параметр, который определяет номер группы регулярного выражения. Если не указан или равен 0, то в массив будут добавляться строки, соответствующие всему регулярному выражению." + "" + "## Примеры" + "" + "```qsp" + "$богиЧерезРазделитель = 'Гестия, Гермес + Афродита, Арес,, Деметра&Гефест, Гера, Посейдон, Афина, Зевс, Артемида; Аполлон'" + "ScanStr 'боги', $богиЧерезРазделитель, '[а-яА-Я]+'" + "'В Древней Греции было <> богов, а именно:'" + "''" + "loop local i = 0 while i < ArrSize('боги') step i += 1:" + " '* <<$боги[i]>>'" + "end" + "```" + "" + "Выведет:" + "" + "```text" + "В Древней Греции было 12 богов, а именно:" + "" + "* Гестия" + "* Гермес" + "* Афродита" + "* Арес" + "* Деметра" + "* Гефест" + "* Гера" + "* Посейдон" + "* Афина" + "* Зевс" + "* Артемида" + "* Аполлон" + "```" + ] + |> String.concat "\n" + let os = + [ + [| String; String; String |], () + [| String; String; String; Numeric |], () + ] |> JustOverloads + "scanstr", dscr, os ] + let jump = let dscr = [