2009-04-29 44 views
1

刪除空格我的文字是這樣的格式從數文本中在VB.NET

「一詞:156 ^^^:^^ 59 DataInput中的」 或者 「一詞:156 ^^^:59 DataInput中的」或「term:156:^^^ 59」

「^」表示空格。 注意兩個數字和冒號之間的空格。兩個數字之間有2,3,4甚至7個空格。我想刪除這些空白,使文本可以在這個格式:

「一詞:156:59 DataInput中的」

這是兩者之間沒有更多的空間號碼 - > 156:56。我只想刪除數字和冒號之間的空格。

感謝您的任何意見。

回答

5

請嘗試以下

Dim result = Regex.Replace(input, "(\d)\s*:\s*(\d)", "$1:$2") 

這將使用正則表達式中的數字和冒號之間匹配的空間。像這樣的任何模式都將被最後一個參數替換。 $ 1和$ 2是轉義序列,表示「替換爲第一個和第二個括號匹配的文本」。在這種情況下,它將是一個數字。

+0

你說得對。正則表達式是強大的。 – Rithet 2009-04-29 03:17:02

+0

正則表達式岩石。 +1 – 2009-04-29 03:18:52

1

我認爲正則表達式將幫助處理不同數量的空白字符。

Dim text As String = "term: 156  :  59 datainput " 
    text = Regex.Replace(text, "([0-9])\s*:\s*([0-9])", "$1:$2", RegexOptions.Singleline)