2013-12-20 3 views
1

Как я могу получить только имя?Visual Basic 2013 RegEx

"Hello Название!"

Dim r As New Regex("Hello (.*)! :)") 
      Dim matches As MatchCollection = r.Matches(Chat) 
      For Each m As Match In matches 
       MsgBox("Hi " & m.ToString & " and welcome back!") 
      Next 

(Chat последний ChatMessage)

ответ

3

Чтобы получить только имя, вы должны использовать Groups. И если вы действительно хотите, чтобы соответствовать :), вы должны бежать ) с помощью \:

Dim Chat As String = "Hello Name!" 
Dim r As New Regex("Hello (.*)! :\)") 
Dim matches As MatchCollection = r.Matches(Chat) 
For Each m As Match In matches 
    m.Groups(1).Value 
Next 
1

Почему бы вам не сделать строку замены для Здравствуйте и ! как вы знаете, они фиксированы ??

Я не знаю VB, но REGEX на другом языке должен быть Здравствуйте (\ S +)!

Смежные вопросы