Обработка текста

Общие вопросы программирования, алгоритмы и т.п.

Модератор: Модераторы

Ответить
Ver-J
незнакомец
Сообщения: 2
Зарегистрирован: 08.08.2009 01:55:35

Обработка текста

Сообщение Ver-J »

Здравствуйте,пытаюсь написать простенького бота) например если у меня есть переменная text как мне обработать ёё процедурой antimat чтоб если было ругательное слово процедура выполняла определенные действия, такое возможно?
скалогрыз
долгожитель
Сообщения: 1804
Зарегистрирован: 03.09.2008 02:36:48

Сообщение скалогрыз »

в помощь начинающим программистам функции Pos, AnsiLowerCase или WideLowerCase
а так же Copy, Delete и length

самый простой пример (и ОЧЕНЬ неточный)

Код: Выделить всё

function AntiMat(const text: WideString): WideString;
var
  l : WideString;
  i,j : integer;
const
  mat: WideString = 'куй';
begin
  Result := text;
  l := WideLowercase(text);
  j:=Pos(mat, l);
  while j > 0 do begin
    for j := j to j+length(mat) do begin
       Result[j]:='*';
       l[j]:='*';
    end;
    j := Pos('куй', l); 
  end;
end;
;
Ver-J
незнакомец
Сообщения: 2
Зарегистрирован: 08.08.2009 01:55:35

Сообщение Ver-J »

спасибо буду пробывать :wink:
gen
новенький
Сообщения: 74
Зарегистрирован: 18.06.2009 21:04:22

Сообщение gen »

А есть ли какие-то процедуры для перевода русского текста в транслит?
eastorwest
новенький
Сообщения: 57
Зарегистрирован: 23.07.2009 20:21:46
Откуда: Н-ск

Сообщение eastorwest »

Про преобразование UTF8 в Translit смотри страничку (где-то в середине код функции Utf8ToTranslit):
viewtopic.php?f=5&t=2389&st=0&sk=t&sd=a&start=45
Ответить