我有sql查询,想要替换除连字符( - ),字母和数字之外的所有字符。 我怎么能在SQL查询
中这样做请帮助我,因为我是regex和sql的新手
答案 0 :(得分:0)
您可以按类别表示非连字符或字母数字字符:
[^\-a-zA-Z0-9]
然后使用REGEXP_REPLACE
从列中删除这些字符:
SELECT REGEXP_REPLACE (col, '[^\-a-zA-Z0-9]', '')
FROM dual;
答案 1 :(得分:0)
这会从输入字符串中删除所有alphabets
和numbers
,并将离开'-'
。
SELECT 'Rajkakla-53535-' As Strng, REGEXP_REPLACE(REGEXP_REPLACE ('Rajkakla-53535-', '[A-Za-z]',''), '[0-9]','') As No_Alphnum
FROM dual;
或者您可以使用:
SELECT REGEXP_REPLACE ('Rajkakla-53535-', '[a-zA-Z0-9]', '')
FROM dual;