将多个空间替换为一个?

时间:2014-01-07 16:48:50

标签: vb.net

好的,所以我正在研究这个VB.NET程序,我尝试使用.replace()来做这个,但这不是最好的方法。我有一个字符串,在我不想要的数据之间有多个空格,从字符串中删除空格的最佳方法是什么?

2 个答案:

答案 0 :(得分:16)

使用正则表达式匹配多个空格并替换为单个空格:

s = Regex.Replace(s, " {2,}", " ")

答案 1 :(得分:5)

这是一种使用数组的方法,以防您更喜欢使用正则表达式。

给出这个起始字符串:

Dim str As String = "This   is a test      string"

你可以这样做:

Dim arr As String() = str.Split({" "c}, StringSplitOptions.RemoveEmptyEntries)
Dim compressedSpaces As String = String.Join(" ", arr)

您也可以将它组合到一行:

Dim newString As String = String.Join(" ", str.Split({" "c}, 
    StringSplitOptions.RemoveEmptyEntries))