2013-11-26 44 views
-1

我有這樣的代碼:如何從字符串中刪除所有空格?

if (TextParsingConfiguration.join == true) 
       { 
        images = images.Trim(' '); 
       } 
       if (TextParsingConfiguration.removecommas == true) 
       { 
        images = ReplacingChars(images, new[] { ',', '"' }, " "); 
       } 

加入和removecommas是布爾變量,即時通訊使用它們也是在複選框Form1上。 而ReplacingChars方法:

public static string ReplacingChars(string source, char[] toReplace, string withThis) 
     { 
      return string.Join(withThis, source.Split(toReplace, StringSplitOptions.None)); 
     } 

也許我錯這裏的邏輯,但我想給用戶兩種選擇。

  1. 刪除所有刪除逗號和引號這個removecommas bool變量。
  2. 加入意思刪除所有的空格,但不是逗號和引號只是刪除/刪除空白,所以整個文本將像一塊文本。

問題2號是否邏輯?如果沒有其他選項可以刪除(乾淨),我可以做? removecommas正在工作。它刪除逗號和引號,並保持原樣。

回答

4

試試這個:

images= images.Replace(" ", String.Empty); 
+0

這個問題談論空白,而不僅僅是空間。空白包括'\ t','\ r'和'\ n'也是 - 僅僅是名字而已。 –

+1

在定稿開始前您的回答正在運行。然後,我的錯誤,我的意思是要刪除像你在第一個解決方案中做的任何空間。但是,這也許我可以添加第三個選項,只刪除空格而不是所有的空格? –

+0

現在你的解決方案與\ S + im在兩者上獲得相同結果之間有什麼不同? –

2

也許是這樣的:

images = Regex.Replace(images, @"\s+", ""); 
4

您可以使用Regex.Replace這樣的:

string newString = Regex.Replace(sourceString, @"\s+", replacement); 
1

您可以分割文字像下面,

string[] sp = new string[] { " ", "\t", "\r" }; 

      string[] aa = images.Split(sp, StringSplitOptions.RemoveEmptyEntries); 
相關問題