DELPHI КОЛИЧЕСТВО ВХОЖДЕНИЙ СИМВОЛА В СТРОКУ
Delphi предоставляет различные способы подсчета количества вхождений символа в строку.
Используя метод Pos
, мы можем найти первое вхождение символа в строку. Затем мы можем передать функцию Pos подстроку, начинающуюся с предыдущей найденной позиции:
function CountOccurences(const AString: string; AChar: Char): Integer;var Pos: Integer;begin Result := 0; Pos := Pos(AChar, AString); while Pos > 0 do begin Inc(Result); Pos := PosEx(AChar, AString, Pos+1); end;end;
Альтернативный метод - использование функции OccurancesOfChar
из модуля StrUtils:
uses StrUtils;function CountOccurences(const AString: string; AChar: Char): Integer;begin Result := OccurancesOfChar(AString, AChar);end;
К сожалению, эти методы не оптимальны при работе с большими строками или символами, которые встречаются часто. В таких случаях лучше использовать цикл и проходить по символам строки:
function CountOccurences(const AString: string; AChar: Char): Integer;var I: Integer;begin Result := 0; for I := 1 to Length(AString) do begin if AString[I] = AChar then Inc(Result); end;end;
Это даст более быстрый результат в большинстве случаев.
Детектор ПОЛЯ или как настроить ЖУЧОК
Программирование в Delphi Урок 3 2 Работа с текстом, строковые функции Length, Pos и другие
Delphi - Swap values inside an Array
Лекция 12: Символы и строки
DELPHI Урок 3 Создание БД, добавление, удаление, изменение записей
DELPHI Урок 6 Связи между таблицами (ADOQuery)
Урок 6 Работа со строками
14 Как работать со строками?
Создание теста на Delphi кратко и по теме
Уроки C++ / #10 урок - Строки и символы