|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
31.07.2013, 15:11 | #1 |
Регистрация: 23.07.2013
Сообщений: 6
|
Регулярное выражение
Ребят, помогите, пожалуйста, составить регэксп на VBA!
Допустим, мне нужно, чтобы он учитывал три слова кот, кит, слон. В расширении файла (кстати, да, суть в том, что он будет использоваться для поиска файлов, содержащих в любом месте названия одно из трёх слов) может быть любое экселевское расширение. Просто в масках я писала *кот*.x*, у меня их было три и всё работало. Накалякала objRegExp.Pattern = "(кот*|кит*|слон*.x*)",но оно вроде как не учитывает мой x*! Скорректируйте меня, пожалуйста! Спасибо=) Уже поняла, что звёздочки не нужны! Последний раз редактировалось xlebobulka; 31.07.2013 в 15:22. |
01.08.2013, 17:47 | #2 |
Регистрация: 23.07.2013
Сообщений: 6
|
Меня все игнорят, но вдруг...
Предыдущий вопрос снят) Теперь другая проблема. Можно ли как то присвоить паттерну значение из переменной? у меня дебаггер говорит что паттерн пустой, хотя пишу objRegExp.Pattern = strList(Index) стрлист точно не пустой, в чём может быть проблема? |
01.08.2013, 18:39 | #3 |
Участник клуба
Регистрация: 02.05.2010
Сообщений: 1,390
|
Вы бы пример выложили в Экс-файле - давно бы решения были. А гадать, что у Вас на уме и что в файле, не очень интересно.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728 |
02.08.2013, 06:16 | #4 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Если переменная strList(Index) содержит значение, которое полностью удовлетворяет синтаксису метасимволов объекта RegExp, то попробуйте записать так:
Код:
Чем шире угол зрения, тем он тупее.
|
02.08.2013, 10:59 | #5 | |
Регистрация: 23.07.2013
Сообщений: 6
|
Цитата:
strFileNameList(0) = "[кот]([a-z]|[0-9]|\s|[.]).*[x]+.+" в переменной такое значение, проверяла на калькуляторе его пригодность - всё подходит |
|
02.08.2013, 18:32 | #6 |
Участник клуба
Регистрация: 17.07.2009
Сообщений: 1,088
|
Без файла трудно понять проблему и гадать можно долго.
Если strList(Index) не пусто, а в Pattern все же попадает пустая строка - значит strList(Index) все же не содержит значения. Либо по пути где-то обнуляется, либо объявлен этот массив неверно. Чудес не бывает и не может быть и strList(Index) не пуст и Pattern пуст, которому из этого strList(Index) значение присваивается. Проверьте, нет ли у Вас игнорирования ошибок: On Error Resume Next. Если есть - уберите и посмотрите, мало ли где ругаться начнет VBE.
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Регулярное выражение | iLnes | Общие вопросы .NET | 3 | 05.12.2012 16:01 |
Регулярное выражение | MissSMITT | PHP | 0 | 01.12.2012 19:00 |
регулярное выражение | Alexandr555 | Общие вопросы Delphi | 3 | 07.04.2012 23:18 |
Регулярное выражение | art-programs | Общие вопросы Delphi | 2 | 21.02.2012 11:58 |
Регулярное выражение | Arassir | PHP | 4 | 16.03.2011 09:42 |