Практическое руководство. Идентификация URI в строке в Visual Basic
В этом примере демонстрируется использование простого регулярного выражения для идентификации универсального кода ресурса (URI) в строке. Чтобы уменьшить число ложных срабатываний (текст ошибочно идентифицируется как URI), необходимо использовать определенный формат URI. Это означает, что будут существовать некоторые ложные отрицательные результаты, где допустимые URI не определены.
Пример
Конкретная форма URI может соответствовать регулярному выражению ([^=":\s]+:)?//[^\s"]+, что означает:
Необязательное отображение:
Предваряющий набор знаков, не являющихся =, ", : или пробел
Предваряющий символ :
Предваряющая строка //
Набор из одного или нескольких символов, которые не являются кавычками или пробелом.
Объект Regex инициализируется с помощью регулярного выражения.
Метод Regex объекта Matches возвращает объект MatchCollection, содержащий сведения обо всех составляющих входной строки, которые соответствуют регулярному выражению.
''' <summary>Identifies URIs in text.</summary>
''' <param name="text">Text to parse.</param>
''' <remarks>Displays each URI in the input text.</remarks>
Sub IdentifyURIs(ByVal text As String)
Dim uriRegex As New Regex("([^="":\s]+:)?//[^\s""]+")
Dim output As String = ""
For Each m As Match In uriRegex.Matches(text)
output &= m.Value & vbCrLf
Next
MsgBox(output)
End Sub
В этом примере необходимо использовать инструкцию Imports для импорта пространства имен System.Text.RegularExpressions. Дополнительные сведения см. в разделе Оператор Imports (пространство имен .NET и тип).
См. также
Задачи
Практическое руководство. Идентификация гиперссылок в строке HTML в Visual Basic
Практическое руководство. Исключение недопустимых символов из строки