Sql去除字符串中所有漢字和符號,僅保留字母數字的方法


 

Sql去除字符串中所有漢字和符號,僅保留字母數字的方法

 

核心思想在於下面幾個模式的組合使用:

%[0-9]%   所有數字
%[A-Za-z]%   所有字母
%[吖-咗]%     所有漢字

 

-- '%[0-9]%'       所有數字
-- '%[A-Za-z]%'    所有字母
-- '%[A-Za-z0-9]%'    所有數字與字母
-- ....          組合使用,依此類推

 

 

1. 去除(提取)漢字(符號、字母、數字):

舉出一例,其他類似:

 1  CREATE FUNCTION f_RemoveChinese  
 2     (  
 3         @str VARCHAR(500)  
 4     )  
 5     RETURNS VARCHAR(500)  
 6     AS  
 7     BEGIN  
 8      --  '%[0-9]%'            所有數字  
 9      --  '%[A-Za-z]%'         所有字母  
10      --  '%[A-Za-z0-9]%'      所有數字與字母  
11      --   ....                組合使用,依此類推  
12         WHILE PATINDEX('%[吖-咗]%',@str) > 0   
13             SET @str = STUFF(@str,PATINDEX('%[吖-咗]%',@str),1,'')  
14         RETURN @str  
15     END  
16     GO  
17       
18     SELECT dbo.f_RemoveChinese('愛@@情123騙子我問@@你')  -- @@123@@  

 

 

 

 

 

 

 

 

 

 

 

·

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM