我有这种格式的文字:
术语:156:59 datainput
我想删除数字之间的":",然后用其他东西替换它,这样文本就可以变成:
术语:156-59 datainput
我怎么能在VB.NET中做到这一点?
在VB.NET(信用Jonathan):
Dim text As String = "term: 156:59 datainput"
Dim fixedText As String = Regex.Replace(text, "(\d+):(\d+)", "$1-$2")
Run Code Online (Sandbox Code Playgroud)
nb:按建议删除最后两行.
是的,我知道这有点笨拙,但它应该有效(假设您的数据完全符合您指定的格式):
input[input.IndexOf(":", input.IndexOf(":")+1)] = "#"
Run Code Online (Sandbox Code Playgroud)
当然,如果您想要更常规的案例来查找NUMBER:NUMBER并将其替换为NUMBER#NUMBER,我建议使用正则表达式,如下所示:
var re = new Regex(@"(\d+):(\d+)");
re.Replace(input, "$1#$2");
Run Code Online (Sandbox Code Playgroud)