Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.08.2017, 10:42   #11
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от bilibian Посмотреть сообщение
DeleteSymbol('привет.'); // Результат: иве
мда...

ладно. а что будет, если напишете так?
Код:
function DeleteSymbol(sText:String):String;
begin
  Result := AnsiLowerCase(sText);
end;

DeleteSymbol('привет.');

тогда попробуйте такой код:
Код:
function DeleteSymbol(sText:String):String;
  const
    Symbols = ['0'..'9','a'..'z','A'..'Z'];
  var
    i : Integer;
begin
  Result := ''; 
  for i :=  1 to Length(sText) do begin
     if CharInSet(AnsiChar(sText[i]), Symbols) 
          or 
 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюяЁё'
   .IndexOf(sText[i])>0) then Result := Result + sText[i];
end;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 11.08.2017, 10:54   #12
bilibian
Форумчанин
 
Регистрация: 21.01.2014
Сообщений: 389
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
тогда попробуйте такой код:
Код:
function DeleteSymbol(sText:String):String;
  const
    Symbols = ['0'..'9','a'..'z','A'..'Z'];
  var
    i : Integer;
begin
  Result := ''; 
  for i :=  1 to Length(sText) do
     if CharInSet(AnsiChar(sText[i]), Symbols) or ('АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюяЁё'.IndexOf(sText[i])>0) then Result := Result + sText[i];
end;
Работает, спасибо!

Последний раз редактировалось bilibian; 11.08.2017 в 11:03.
bilibian вне форума Ответить с цитированием
Старый 11.08.2017, 13:36   #13
Filka
Форумчанин
 
Регистрация: 29.10.2015
Сообщений: 272
По умолчанию

Код:
function MyTrim(const S: string): string;
var
  Sp, Rp: PChar;
begin
  SetLength(Result, Length(S));
  Sp := PChar(S);
  Rp := PChar(Result);
  while Sp^ <> #0 do
  begin
    if IsCharAlpha(Sp^) or IsCharAlphaNumeric(Sp^) then
    begin
      Rp^ := Sp^;
      Inc(Rp);
    end;
    Inc(Sp);
  end;
  SetLength(Result, Rp - PChar(Result));
end;
Filka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Оставить в числе только первые вхождения каждой цифры. Saratow Помощь студентам 4 14.05.2015 19:07
Оставить Только Первые Буквы Слов В Предложении PDiddy Microsoft Office Excel 5 30.04.2013 07:17
Строки. Преобразовать строку: оставить слова, содержащие буквы и цифры, остальные удалить Ленка ленка Паскаль, Turbo Pascal, PascalABC.NET 1 23.04.2012 11:51
Оставить в переменной только латинские буквы Delphinchik PHP 2 31.03.2011 14:41