Регулярные выражения

Вопросы программирования на Free Pascal, использования компилятора и утилит.

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

Регулярные выражения

Сообщение itwork » 01.01.2007 15:44:35

ЛЮди поделитесь сылками документации или теориями по "Регулярным выражениям" (и лучше чтоб она была связана с Паскалем) Ж)
Или кидайте док. мне на мыло domaincall@inbox.lv
itwork
новенький
 
Сообщения: 41
Зарегистрирован: 28.12.2006 14:32:28

Сообщение DiFor » 21.10.2007 19:12:04

Кстати как в фпц с регулярами? есть ли уже что-то реализованное?
DiFor
незнакомец
 
Сообщения: 6
Зарегистрирован: 12.10.2007 19:44:21
Откуда: Пермь

Сообщение Attid » 21.10.2007 21:54:57

было на форуме . в поиск.

на дельфе отдельный юнит юзал, если найду то выкладу, но не в этом месяце.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2586
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение alexs » 21.10.2007 22:33:45

пакет regexpr из состава FPC - это разве не то?
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4060
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Сообщение DiFor » 22.10.2007 19:39:14

Спасибо, покурю его
DiFor
незнакомец
 
Сообщения: 6
Зарегистрирован: 12.10.2007 19:44:21
Откуда: Пермь

Сообщение debi12345 » 23.10.2007 08:21:24

DiFor писал(а):Спасибо, покурю его

Родной из FPC - слабоватый. хотя и компактный. И самое страшное - он не поддерживает юникод.
Зато в Инете легко обнаруживается отдельный юнит - RegExpr. Вот он реально то, что нужно.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение Attid » 23.10.2007 12:53:44

ага вот про него я и говорил.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2586
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение GN » 24.10.2007 22:41:33

Код: Выделить всё
var
  st, st2, st3: String;

begin
  st := 'http://freepascal.ru';
  st2 := '[img]*[/img]';


Как с помощью RegExpr заменить "*" на st?
Аватара пользователя
GN
новенький
 
Сообщения: 67
Зарегистрирован: 29.07.2007 07:35:56
Откуда: Казахстан

Сообщение GN » 26.10.2007 10:48:26

Решил проблему в лоб :)
Код: Выделить всё
function zvezda(maska, adres, zamena: String): String;
var
  i: SmallInt;
  dl_zamena: SmallInt;
 
begin

  dl_zamena := Length(zamena);
  i := pos(zamena, maska);
  Delete(maska, i, dl_zamena);
  Insert(adres, maska, i);
  zvezda := maska;

end; 
Аватара пользователя
GN
новенький
 
Сообщения: 67
Зарегистрирован: 29.07.2007 07:35:56
Откуда: Казахстан

Сообщение shade » 26.10.2007 12:45:12

SysUtils.StringReplace - ещё никто не отменял :wink:
Код: Выделить всё
uses SysUtils;

begin
  writeln( StringReplace('[img]*[/img]', '*', 'http://freepascal.ru', [rfReplaceAll]) );
end.
Аватара пользователя
shade
энтузиаст
 
Сообщения: 879
Зарегистрирован: 21.02.2006 20:15:48
Откуда: http://shamangrad.net/

Сообщение GN » 26.10.2007 16:13:23

shade спасибо, буду иметь ввиду.
Аватара пользователя
GN
новенький
 
Сообщения: 67
Зарегистрирован: 29.07.2007 07:35:56
Откуда: Казахстан


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12

Рейтинг@Mail.ru