2017-08-29 54 views
2

我們的項目說明字段可以在文本之間具有隨機數量的空格。我使用RTRIMLTRIM在用SQL進行提取時清理列的右側和左側,但這不能解決單詞之間不必要的空格。從字符串中刪除未知數量的空格

我試過創建一個公式TRIM({Command.ItemDesc}),但是這並沒有去掉多餘的空格。有沒有辦法在Crystal或SQL 2016中解決這個問題?

+0

此處介紹的解決方案適用於:https://stackoverflow.com/questions/2182877/sql-method-to-re- replace-repeating-blanks-with-single- b lanks –

+0

你想刪除中間的所有*空格嗎?或者只是將多個鏈接空間縮小到一個空間中?這將影響哪些答案適用於您的案例。 – 4444

+0

我正試圖將鏈接空間的數量減少到單個空間中。到目前爲止,似乎所有答案都將特定數量的空間縮減爲單個空間。問題在於空間的數量因記錄而異。 –

回答

2

TRIM用空格字符串中間不處理,只有空格前後串後,您需要使用Replace功能,嘗試:

Replace({Command.ItemDesc}," ","") 
0

朗的答案將刪除所有空間你的字符串。如果你想保持一定的必要空間,但刪除不必要的,你可以用這個公式:

TRIM(Replace({Command.ItemDesc}," "," ") 

這個公式有兩個步驟:

  1. 前後串後刪除所有空格
  2. 將多個空間的任意點縮小到一個空間中