Войти

Показать полную графическую версию : Регулярное выражение: деление по словам, русские буквы


Dr.DG
27-10-2012, 13:49
Пишу надстройку для PowerPoint. Нужно находить слова, содержащиеся в презентации, по первым введённым пользователем буквам. В Wordе аналогичную задачу решал с помощью поиска по маске вида "<(строкапоиска)" With rngSearchRange.Find
.Text = "<(" & strSearchWord & ")"
.MatchWildcards = True
'дальше другие команды
End With Так как в PowerPoint нет поиска по маске, подключил библиотеку Microsoft VBScript Regular Expressions 5.5, но не могу подобрать маску для регулярного выражения. Слова могут разделяться пробелами, символами абзаца, символами конца строки, табуляторами. Для поиска английских слов по первым буквам хорошо подходит маска \bстрокапоиска\w+\b, где "строкапоиска" - английские буквы. Для русских слов \b не работает.

Хочется найти что-то аналогичное и эффективное для поиска русских слов.

Busla
29-10-2012, 14:17
По хорошему и не надо использовать регулярки для тривиальных текстовых операций.

Dr.DG
29-10-2012, 20:58
Busla, в смысле, просто оперировать строковыми функциями?

ferget
29-10-2012, 21:24
просто оперировать строковыми функциями »
Просто InStr(), после каждой буквы проверять, чтобы возвращаемое значение было равно 1




© OSzone.net 2001-2012