Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

26.04.2010, 00:29
|
|
Познающий
Регистрация: 13.08.2009
Сообщений: 92
Провел на форуме: 441444
Репутация:
1
|
|
TRegExpr
Как установить компонент TRegExpr в Builder C++ 2010.
Делаю всё по шагам:
1. Component
2. Import Component
3. Import a Type Library
4. Выбираю из списка Microsoft VBScript Regular Expression 5.5
5. Выбираю галочку Generate Component Wrappers.
6. Генирируються какие-то файлы VBScript_RegExp_55_TLB.h и VBScript_RegExp_55_TLB.cpp
Согбственно, как использовать сам компонент. Мб у кого будет примеры по использованию?
|
|
|

26.04.2010, 01:11
|
|
Участник форума
Регистрация: 30.03.2007
Сообщений: 121
Провел на форуме: 188563
Репутация:
52
|
|
Сообщение от IgrikX
Как установить компонент TRegExpr в Builder C++ 2010.
Делаю всё по шагам:
1. Component
2. Import Component
3. Import a Type Library
4. Выбираю из списка Microsoft VBScript Regular Expression 5.5
5. Выбираю галочку Generate Component Wrappers.
6. Генирируються какие-то файлы VBScript_RegExp_55_TLB.h и VBScript_RegExp_55_TLB.cpp
Согбственно, как использовать сам компонент. Мб у кого будет примеры по использованию?
1. Google
2. Поиск: http://forum.antichat.ru/showthread.php?p=2077329
3. В архиве должны быть демки
|
|
|

26.04.2010, 12:55
|
|
Участник форума
Регистрация: 20.12.2008
Сообщений: 277
Провел на форуме: 828081
Репутация:
84
|
|
http://www.autocombats.info/files/regexp/index.html доки на русском, у меня в закладках
Выбираю из списка Microsoft VBScript Regular Expression 5.5 5. Выбираю галочку Generate Component Wrappers. 6. Генирируються какие-то файлы VBScript_RegExp_55_TLB.h и VBScript_RegExp_55_TLB.cpp
А зачем майкрософтовсктй устанавливаешь, если тебе TRegExpr надо было 
И вообще-то это не компонент, а класс!
Просто подключаешь модуль в uses, и как бы используешь
Сорри, забыл что билдер, конечно же не uses а как там у вас пространства имен подключаются
Последний раз редактировалось GhostOnline; 26.04.2010 в 13:57..
|
|
|

26.04.2010, 16:36
|
|
Познающий
Регистрация: 13.08.2009
Сообщений: 92
Провел на форуме: 441444
Репутация:
1
|
|
ну, я вкурил уже..
|
|
|

26.04.2010, 17:56
|
|
Познающий
Регистрация: 13.08.2009
Сообщений: 92
Провел на форуме: 441444
Репутация:
1
|
|
Только не вкурил как его использовать. Кто знает помогите. Или скиньте пример.
PHP код:
RegExp *re;
re->Pattern = (wchar_t*)"aaa";
UnicodeString str = "aaa 111 vvv";
String Result = re->Replace(str,"aaa");
Memo1->Text = Result;
Последний раз редактировалось IgrikX; 26.04.2010 в 18:01..
|
|
|

26.04.2010, 18:19
|
|
Участник форума
Регистрация: 20.12.2008
Сообщений: 277
Провел на форуме: 828081
Репутация:
84
|
|
Пример на дельфи
var
reg : TRegExpr;
begin
reg := TRegExpr.Create;
reg.Expression := 'aaa';
if reg.Exec('aaa 111 vvv')
then Memo1.Text := reg.Match[0];
reg.Free;
end;
Хм, мы говорим о разных классах?
|
|
|

26.04.2010, 19:15
|
|
Участник форума
Регистрация: 23.07.2009
Сообщений: 261
Провел на форуме: 4435957
Репутация:
539
|
|
Сообщение от GhostOnline
Пример на дельфи
var
reg : TRegExpr;
begin
reg := TRegExpr.Create;
reg.Expression := 'aaa';
if reg.Exec('aaa 111 vvv')
then Memo1.Text := reg.Match[0];
reg.Free;
end;
Хм, мы говорим о разных классах?
У меня почему то, всегда в Match[0] пустота...
Вот от меня пример (дельфи)
PHP код:
var RegExp: TRegExpr;
begin
RegExp := TRegExpr.Create;
RegExp.Expression := 'http://(.+?)/';
RegExp.Exec(url.text);
url_ := RegExp.Match[1];
RegExp.Free;
end;
Последний раз редактировалось HakaR; 26.04.2010 в 19:24..
|
|
|

26.04.2010, 19:30
|
|
Участник форума
Регистрация: 20.12.2008
Сообщений: 277
Провел на форуме: 828081
Репутация:
84
|
|
Reg.Match[0] - это в в целом выражение,
REg.Match[1] - это первое подвыражение
Учи матчасть 
|
|
|

26.04.2010, 19:30
|
|
Новичок
Регистрация: 05.05.2005
Сообщений: 19
Провел на форуме: 46386
Репутация:
1
|
|
Код:
AnsiString input="Text here";
AnsiString exp="(.{1,2}) ";
TRegExpr* r= new TRegExpr;
r->Expression=exp;
if(r->Exec(input))
ShowMessage(r->Match[1]);
else
ShowMessage("Empty");
|
|
|

26.04.2010, 19:46
|
|
Познающий
Регистрация: 13.08.2009
Сообщений: 92
Провел на форуме: 441444
Репутация:
1
|
|
GhostOnline, походу да..)
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|