如何过滤除字符串中的数字之外的任何内容

时间:2013-08-19 03:03:15

标签: vb.net

我想从字符串中过滤掉其他字符,并将剩余的数字与句点分开。

这是我的字符串:major.number=9minor.number=10revision.number=0build.number=804

这是预期的输出:9.10.0.804

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

至于我的评论,如果您的文字不变,可以使用String.Split删除文字,String.Join添加您的分词。使用字符串的快速示例。

Sub Main()
    Dim value As String = "major.number=9minor.number=10revision.number=0build.number=804"
    Dim seperator() As String = {"major.number=", "minor.number=", "revision.number=", "build.number="}

    Console.WriteLine(String.Join(".", value.Split(seperator, StringSplitOptions.RemoveEmptyEntries)))
    Console.ReadLine()

End Sub

答案 1 :(得分:0)

如果您的字符串并不总是遵循特定模式,则可以使用Regex.Replace

Sub Main()
    Dim value as String = "major.number=9minor.number=10revision.number=0build.number=804"

    Dim version as String = Regex.Replace(value, "\D*(\d+)\D*", "$1.") ' Run the regex
    version = version.Substring(0, version.Length - 1) ' Trim the last dot
End

请注意,您应该Imports System.Text.RegularExpressions