Вниз
Скачать: CL | DM;

Регулярные выражения и с чем их едят...   Найти похожие ветки 

← →
Cosinus ©   (2004-02-04 15:10) [0]

Добрый день. Вчера на основном форуме я задал такой вопрос (цитирую дословно)-

Cosinus © (03.02.04 18:21)
"Мне необходимо осуществить в файле поиск по маске, т.е. допустим есть файл, в нем ищется последовательность символов, длинной не менее LenMin и не более LenMax, и содержащаая только , например, символы "№" и "+". Как я поступаю сейчас :

читаю символ
проверяю на соответствие поставленным условиям
если нет, читаю следующий (вот здесь как то не очень получается, потому что, даже если да, то я же все равно читаю следующий, но правда в некоторой функции, которая накладывает доп. условия, такие как LenMax, LenMin и следит, чтобы не было конца файла)

Меня не устравает скорость работы данного алгоритма, может мне кто-нибудь посоветовать по этому поводу?
Заранее благодарен."

Sergey_Masloff мне порекомендовал использовать регулярные выражения. Я нашел инфу по ним, оказалось, что это действитедьно то, что мне нужно, НО....

Я собирался использовать библиотеку RegExpr ( http://regexpstudio.com/), автор Andrey V. Sorokin, но я совершенно не понимаю синтаксис, даже не сам синтаксис, а скорее конструкции, как это сделать. Ну допустим я составил условия поиска... Но хоть убейте, я не могу понять как его заставить работать. Если кто-либо что-нибудь подскажет, буду очень рад.

PS По-моему строка для данных мною условий, должна выглядеть так
[\d|#]{1,6, проверьте пожалуста, кто знает.


← →
Cosinus ©   (2004-02-04 16:00) [1]

Up


← →
nikkie ©   (2004-02-04 17:40) [2]

вместе с библиотечкой Сорокина идет демо - можно взять и проверить твое выражение на твоих текстах.


← →
Ломброзо ©   (2004-02-04 17:59) [3]

Создай файл с расширением .js и тестируй выражение в нём

var re = new ActiveXObject("VBScript.RegExp");
re.Pattern = "[0-9№]{1,6}";
if (re.Test("asasd№asdasdadasdasd"))
{
WScript.Echo("true");
} else {
WScript.Echo("false");
}



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.021 c
1-79989
HF-Trade
2004-02-14 10:52
2004.02.25
Как сохраниться в определенную строку.


6-80062
Anet
2003-12-16 13:09
2004.02.25
Отследить вход пользователя в сеть


14-80102
Igor_thief
2004-02-02 20:24
2004.02.25
StatusBar


1-79830
antonn
2004-02-11 06:59
2004.02.25
Изменить размер формы.


3-79578
EvilX
2004-01-29 12:11
2004.02.25
Как отследить ошибку при подключении к БД?




   Наверх