Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.84/19: Рейтинг темы: голосов - 19, средняя оценка - 4.84
призрак
 Аватар для ikki
3266 / 894 / 119
Регистрация: 11.05.2012
Сообщений: 1,702
Записей в блоге: 2

Использование "нестандартной" библиотеки для регулярных выражений в VBA

10.02.2013, 02:09. Показов 4528. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Возможно ли?
"Стандартный" вариант Microsoft VBScript Regular Expression 5.5 не поддерживает некоторые "плюшки", например, проверки (?<=...) или (?<!...)

Вот здесь: http://msdn.microsoft.com/en-u... twtah.aspx я нашёл примеры для .NET (в т.ч. и для VB.NET), использующие такие возможности.
При этом используется Imports System.Text.RegularExpressions

К сожалению, мой несовершенный английский окончательно объявил забастовку, и ничего интересующего меня по данной ссылке мне найти не удалось.
А именно:
Можно ли подключить эту библиотеку (?) в VBA for Excel?
Если да, то как именно?
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.02.2013, 02:09
Ответы с готовыми решениями:

Использование регулярных выражений для строк
Доброго времени суток, уважаемые форумчане! У меня есть проблема: как мне при помощи регулярных выражений запретить пользователю ввод с...

Использование регулярных выражений для получения определенных строк
ребят помогите пожалуйста, не могу сделать и все (((( есть файл, в этом файле нужно найти строки типа: 10.05.2012 16:17:38,977 ...

Использование регулярных выражений для поиска подстроки в строке
Приветствую. Есть задача - забрать фамилию человека из строки вида: Вы зашли под именем (Именно так, с переносом строки) ...

20
224 / 135 / 45
Регистрация: 08.09.2012
Сообщений: 283
Записей в блоге: 1
22.02.2021, 23:05
Студворк — интернет-сервис помощи студентам
Заработало!!! Проверил только обратную проверку ("позитивное заглядывание назад"), остальные "плюшки" PCRE не тестировал.
P.s. отрицательная обратная проверка типа oRegexp.Pattern = "(?<!123)кот" тоже работает!

Кликните здесь для просмотра всего текста
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Sub Regexp_Test()
    
    Dim oRegexp As IRegExp
    Set oRegexp = New cRegExp
    
    Dim objMatches As Object
    Dim objMatch As Object
    Dim i As Long
    oRegexp.UsePcre = True
 
    oRegexp.Pattern = "(?<=123)кот"
    oRegexp.Global = True
    
    Set objMatches = oRegexp.Execute("123кот пёс котик абвв 456кот")
    
    For i = 0 To objMatches.Count - 1
        Set objMatch = objMatches.Item(i)
        MsgBox objMatch.Value & ", " & "FirstIndex=" & objMatch.FirstIndex & ", " & "Length=" & objMatch.Length
    Next
    
End Sub
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.02.2021, 23:05

Внедрить использование регулярных выражений для улучшения логики бота
Написал бота. Он парсит текст сообщения, а-ля: &quot;Привет&quot;, ответ будет &quot;Привет, как дела?&quot;. Но есть проблема, допустим есть такое: ...

Использование регулярных выражений для проверки введённой строки на наличие определённых символов
Подскажите как реализовать: Нужно чтобы при указании имени папки скрипт проверял его на корректность, т.е. нельзя же использовать сиволы...

Есть ли в С# встроеные библиотеки регулярных выражений?
Есть ли в С# встроеные библиотеки регулярных выражений?

Использование регулярных выражений в GO
Регулярные выражения(RegEx) — система обработки текста, основанная на специальной системе записи образцов для поиска. Образец (англ....

Использование регулярных выражений
Добрый День! Имеется строка в виде &lt;Symbol&gt;GRX/SPB&lt;/Symbol&gt; &lt;ContractPosition&gt;-100&lt;/ContractPosition&gt;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
21
Ответ Создать тему
Новые блоги и статьи
SUNO Ai - Река Без Дна
zorxor 31.07.2026
Автор стихотворения - астрофизик Марина Катыс Ссылка на сгенерированную музыкальную композицию: https:/ / suno. com/ song/ 6f6e5464-b290-4650-be6c-44c85f8d8013 Я говорю, что Время- как вода течет. . .
Из невошедшего на форум (диалог с ИИ-гугла)
zorxor 29.07.2026
А вот, что интересно, сказал мне ИИ-гугла: Этот текст — эмоциональный пост пользователя под ником zorxor на интернет-форуме (вероятно, посвященном мистике, непознанному или альтернативной науке). . . .
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Новости компьютерного мира и их обсуждение (4) Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru