如何在VB.NET中删除两个数字之间的冒号?

时间:2009-04-28 14:05:34

标签: vb.net

我有这种格式的文字:

  

术语:156:59 datainput

我想删除数字之间的“:”,然后用其他内容替换它,以便文本可以变为:

  

术语:156-59 datainput

如何在VB.NET中执行此操作?

4 个答案:

答案 0 :(得分:6)

在VB.NET中(信用Jonathan):

    Dim text As String = "term: 156:59 datainput"
    Dim fixedText As String = Regex.Replace(text, "(\d+):(\d+)", "$1-$2")

nb:按建议删除了最后两行。

答案 1 :(得分:5)

是的,我知道这有点笨拙,但它应该有效(假设您的数据完全符合您指定的格式):

input[input.IndexOf(":", input.IndexOf(":")+1)] = "#"

当然,如果您想要更常规的案例来查找NUMBER:NUMBER并将其替换为NUMBER#NUMBER,我建议使用正则表达式,如下所示:

var re = new Regex(@"(\d+):(\d+)");
re.Replace(input, "$1#$2");

答案 2 :(得分:0)

假设您已将数据读入字符串,请查看string.replace函数。

答案 3 :(得分:0)

您也可以使用字符串替换

来完成此操作

Dim data As String =“term:156:59 datainput”

data = data.Replace(“:”,“ - ”)。替换(“term-”,“term:”)