2016-11-10 175 views
0

我期望從字符串末尾刪除特殊字符。從字符串末尾刪除特殊字符

輸入:

looking for Oracle help ~(
looking ~! for Oracle help ~(Stack 
looking ~! for Oracle help ~(Stack ## 

輸出:

looking for Oracle help 
looking ~! for Oracle help ~(Stack 
looking ~! for Oracle help ~(Stack 

所以我只需要只從字符串的結尾去掉非字母數字字符。

我正在尋找Oracle SQL查詢來實現此目的。

回答

1
select regexp_replace(str, '[^[:alnum:]]*$') from.... 

其中str是輸入字符串值。這將刪除所有在str$末尾錨定的非字母數字字符; *表示儘可能多的連續字符; [...]表示字符匹配集合,而^內的字符匹配集合表示否定)。通過不給第三個參數regexp_replace(),子字符串被替換爲無(''