Рекурсивный поиск с помощью функции PosDelphi , Синтаксис , Текст и СтрокиРекурсивный поиск с помощью функции Pos
Оформил: DeeCo function PosN(Substring, Mainstring: string; n: Integer): Integer; { Function PosN ermittelt rekursiv - die N te Position von "Substring" in "Mainstring". Ist der String nicht enthalten, Ergebnis 0. Falls N zu hoch ist, wird das letzte gefundene Vorkommen angezeigt. Funktioniert mit Chars und Strings } { Function PosN get recursive - the N th position of "Substring" in "Mainstring". Does the Mainstring not contain Substrign the result is 0. Works with chars and strings. } begin if Pos(substring, mainstring) = 0 then begin posn := 0; Exit; end else begin if n = 1 then posn := Pos(substring, mainstring) else begin posn := Pos(substring, mainstring) + posn(substring, Copy(mainstring, (Pos(substring, mainstring) + 1), Length(mainstring)), n - 1); end; end; end; //Beispiele / Examples i := posn('s', 'swissdelphicenter.ch', 2); // i=4 i := posn('x', 'swissdelphicenter.ch', 1); // i=0 i := posn('delphi', 'swissdelphicenter.ch', 1); // i=6 Вот перевод контента на русский язык: Функция Сигнатура функции
Тело функции Если подстрока не найдена в основной строке, функция возвращает 0.
Если подстрока найдена, функция проверяет, равно ли
Если
Примеры Предоставленные примеры демонстрируют использование этой функции:
В целом, эта функция - полезный инструмент для поиска конкретных шаблонов или подстрок в более крупных строках. Функция PosN реализует рекурсивный поиск и находит N-ю позицию подстроки в основной строке, если подстрока не найдена, то функция возвращает 0. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Текст и Строки ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |