好吧,让我说我有一个字符串“帽子里的猫”,我知道想要正则表达式匹配同一串的猫狗。
所以我有类似的东西:
Dim myString As String = "The cat in the hat dog"
Dim regex = New Regex("\bcat\b.*\bdog")
Dim match = regex.Match(myString)
If match.Success Then
Console.WriteLine(match.Value)
End If
match.Value返回“帽子狗中的猫”,这是预期的。
但我真正需要的只是“猫狗”,中间没有其他词语,我被卡住了。
感谢您的帮助!
如果有帮助,我试图解析的字符串就像“游戏名称20_03 Starter Pack r6”,我试图将“20_03 r6”拉出作为版本信息。目前使用“\ b \ d {2} _ \ d {2} \ b。 \ br \ d ”作为我的正则表达式字符串。
答案 0 :(得分:5)
您可以将正则表达式的某些部分括起来,以创建捕获值的组:
Dim regex As New Regex("\b(cat)\b.*\b(dog)")
然后使用match.Groups(1).Value
和match.Groups(2).Value
。
答案 1 :(得分:4)