iT邦幫忙

0

去除字串空白

請問一下大家是否知道若是字串前後有空白該如何去除

1 個回答

1
jack555265
iT邦新手 4 級 ‧ 2020-09-07 13:57:32
最佳解答

變數名 + CLIPPED
ex. l_sql CLIPPED

看更多先前的回應...收起先前的回應...
ru0217 iT邦新手 5 級 ‧ 2020-09-07 14:11:54 檢舉

LET p_temp = p_temp CLIPPED,請問這樣寫有錯嗎 ?
我試了怎麼一樣還是前面有空白 ?

試試看 變數名.trim()

ru0217 iT邦新手 5 級 ‧ 2020-09-07 15:05:31 檢舉

這個我之前就試過,也不行

方便請教一下您如何驗證此欄位是否有空白字元?
是DISPLAY出來還是塞入資料庫後查看的?
若是在SQL中調用此變數,應該是這樣 trim(p_temp)
另外是否有在後面片段再針對這個變數賦值
也可以跑Debugger看看

ru0217 iT邦新手 5 級 ‧ 2020-09-07 16:04:26 檢舉

我是使用DISPLAY,「p_temp = " 84-320199-00G|84-320205-00G|84-420298-00G|84-420341-00G|"」,我有使用debugger看
我是在做字串整合,只是整合好後發現最前面會多一個空白,所以一直不知如何刪除

p_temp 宣告是VARCHAR還是STRING?
先試著 LET p_temp = '',再整合
整合前84-320199-00G的前面是否就已經有空白了?
若84-320199-00G這是另一個變數,在整合進p_temp前可以先.trim()

ru0217 iT邦新手 5 級 ‧ 2020-09-07 16:27:58 檢舉

p_temp 宣告是VARCHAR
可以了,感謝你!!

我也想知道是做了什麼解決的~
p_temp改宣告STRING?
先p_temp = ''?
還是針對那個字串的變數做trim()再整合進p_temp?

ru0217 iT邦新手 5 級 ‧ 2020-09-07 18:09:54 檢舉

因為一開始有設定 LET p_temp = '',
所以要加判斷式,若是沒資料不可以直接LET p_temp = p_temp,l_excelData.oqb03,'|'

IF p_temp IS NULL THEN
LET p_temp = l_excelData.oqb03,'|'
ELSE
LET p_temp = p_temp,l_excelData.oqb03,'|'
END IF

了解了
恭喜解決問題

我要發表回答

立即登入回答