我有这种格式的文字:
术语:156:59 datainput
我想删除数字之间的“:”,然后用其他内容替换它,以便文本可以变为:
术语:156-59 datainput
如何在VB.NET中执行此操作?
答案 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:”)