выберите подчеркнутый текст из RTF с помощью регулярных выражений - PullRequest
0 голосов
/ 26 января 2012

Я хочу выбрать следующий фрагмент текста, который подчеркнут.Вы видите, что RTF richtextbox имеет следующий код для подчеркнутого текста:

\ul\i0 hello friend\ulnone\i

Но обычный текст выглядит подчеркнутым.Что я хочу сделать, это щелкнуть по кнопке, rtfbox должен выбрать следующий фрагмент текста, который подчеркнут.Вот пример текста:

hello [friend your] house [looks] amazing.

представьте, что слова в квадратных скобках подчеркнуты.Когда я первый раз нажимаю кнопку 1, нужно выбрать «друг твой», а при следующем нажатии - «внешний вид».Вид продолжайте двигаться вперед и продолжайте выбирать тип приложения.Я знаю, что это можно сделать с помощью регулярных выражений, но не могу построить логику.

Любая помощь будет оценена.Большое спасибо: D

1 Ответ

1 голос
/ 26 января 2012

Регулярное выражение будет

Dim pattern As String = "\\ul\\i0\s*((?:(?!\\ulnone\\i).)+)\\ulnone\\i"

Объяснение

\\ul\\i0              # the sequence "\ul\i0"
\s*                   # any number of white space
(                     # begin group 1:
  (?:                 #   non-capturing group:
    (?!               #     negative look-ahead ("not followed by..."):
      \\ulnone\\i     #       the sequence "\ulnone\i"
    )                 #     end negative look-ahead
    .                 #     match next character (it is underlined)
  )+                  #   end non-capturing group, repeat
)                     # end group 1 (it will contain all underlined characters)
\\ulnone\\i           # the sequence "\ulnone\i"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...