简单的正则表达式匹配字符串

时间:2011-08-11 12:12:24

标签: regex vb.net

我有一个简单的字符串:s:10:"char1";s:2:"13";i:1;a:8:,我希望与13内的" "匹配,在PHP我会做类似的事情: /s:\d\d?:\"char1\";s:\d\d?:\"(.*?)\";i:\d\d?;a:\d\d?:/i但我对vb的匹配方法并不擅长,所以请给我一个完整的例子,说明我如何匹配我需要的东西(可能是多个匹配(2))。感谢

1 个答案:

答案 0 :(得分:1)

要放入Regex .Net对象的正则表达式模式应该是:

  

取值\:\ d + \:"(\ d +)"

为了识别任何模式s:x:" y" (x和y用作数值)可以包含数字y,在你的情况下是13 ...

它符合所有出现的情况。

然后通过VB级别,我不太好,我给你一个代码草案(验证):

Dim pattern As String = "s\:\d+\:""(\d+)"""

Dim input as String = .......

For Each match As Match In Regex.Matches(input, pattern, RegexOptions.IgnoreCase)
         Console.WriteLine("{0} - {1}", _
                           match.Value, match.Groups(1).Value)

match.Groups(1)给出数字13(\ d +)。

match.Value为您提供整个匹配值s \:\ d + \:"(\ d +)"。