Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как задать два Pattern RegExp в VBA Excel? / 6 сообщений из 6, страница 1 из 1
07.05.2009, 16:37
    #35975097
DasTin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как задать два Pattern RegExp в VBA Excel?
Задача такова:
Есть текстовый файл в нём есть текст вида "RN300800". В каждом файле этот номер разный, в другом файле может быть "ZK311822"
В начале я задаю шаблон myRegExp.Pattern = "[A-Z]{2}\d{6}"

Затем я открываю файл и проверяю его построчно на наличие совпадения

If myRegExp.Test(Stroka) Then
Set colMatches = myRegExp.Execute(data)
KOD = colMatches(0)
End If

После того как номер найден и сохранён в переменную, мне нужно найти дату по шаблону Pattern = "\d\d\-\d\d\-\d\d\d\d" и тоже сохранить в переменную
Если номер не найден файл закрывается и дата не ищется Close #MyFile


Как мне ужить два шаблона в одном макросе?
...
Рейтинг: 0 / 0
07.05.2009, 16:57
    #35975178
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как задать два Pattern RegExp в VBA Excel?
задавай так myRegExp.Pattern = "([A-Z]{2}\d{6})*(\d\d\-\d\d\-\d\d\d\d)"
и смотри коллекцию SubMatches


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
07.05.2009, 18:05
    #35975388
DasTin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как задать два Pattern RegExp в VBA Excel?
Игорь Горбонос,


Да, но если первое условие мне нужно просто найти и сохранить, то при выполнении второго условии мне нужно ещё проманипулировать со строкой. ???
...
Рейтинг: 0 / 0
07.05.2009, 18:13
    #35975400
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как задать два Pattern RegExp в VBA Excel?
> Автор: DasTin
> Да, но если первое условие мне нужно просто найти и сохранить, то при выполнении второго условии мне нужно ещё
> проманипулировать со строкой. ???

Тогда может имеет смысл загружать в переменную полностью весь файл и выполнять 2 отдельных поиска на номер и на дату?
Или файлы большие? Или может воспользоватся внешней утилитой, например grep?


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
07.05.2009, 18:48
    #35975464
DasTin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как задать два Pattern RegExp в VBA Excel?
Игорь Горбонос,

Да нет, файлы не большие по 15 Кб.
Я так понимаю, что "2 отдельных поиска на номер и на дату" - это два отдельных макроса?
...
Рейтинг: 0 / 0
07.05.2009, 18:49
    #35975468
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как задать два Pattern RegExp в VBA Excel?
> Автор: DasTin
> Я так понимаю, что "2 отдельных поиска на номер и на дату" - это два отдельных макроса?
да


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как задать два Pattern RegExp в VBA Excel? / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]