Версия для печати

Очистка строки слева и справа от указанного символа

Оцените материал
(0 голосов)

Очистка строки слева и справа от указанного символа

Функция возвращает строку Str, очищенную слева и справа от указанного символа Symbol.

Работает быстрее аналогичной функции UBPFD.TrimEx, так как не использует функцию поиска Pos, имеет более компактный код.

function TrimString(Str: string; Symbol: char): string;
begin
  Result := Str;
  if Str = '' then
    exit;
  Str := Trim(Str);
  // Удаляем в начале строки
  while (length(Str) > 0) and
    (AnsiUpperCase(Str[1]) = AnsiUpperCase(Symbol)) do
    Delete(Str, 1, 1);
  // Удаляем в конце строки
  while (length(Str) > 0) and
    (AnsiUpperCase(Str[length(Str)]) = AnsiUpperCase(Symbol)) do
    Delete(Str, length(Str), 1);
  Result := Str;
end;
Прочитано 6031 раз