首頁 >資料庫 >mysql教程 >sql sever 字串截取漢字

sql sever 字串截取漢字

伊谢尔伦
伊谢尔伦原創
2016-11-24 15:30:571397瀏覽

最近需要在SQL的字串中截取漢字,利用unicode函數判斷字元的unicode編碼,根據編碼範圍過濾掉非漢字字元。

寫成了一個function

/*@str 需要取得漢字的字串*/

create function CharRep(@str nvarchar(200))
returns nvarchar(200)
as 
begin 
 declare @i int, @char nvarchar(1), @zh nvarchar(200)
 set @i = 1
 set @zh = ''
 while @i <= len(@str)
 begin
  set @char = substring(@str, @i, 1)
  if  unicode(@char) between 19968 And 40869
   set @zh = @zh + @char
  set @i = @i + 1
 end
 return @zh
end

執行select dbo.CharRep('儂好a/bc  儂好')
🜎附:

unicode編碼範圍:

漢字:[0x4e00,0x9fa5](或十進位[19968,40869])

數字:[0x30,0x39](或十進位[48, 57])搜尋0x7a](或十進位[97, 122])

大寫字母:[0x41,0x5a](或十進位[65, 90])




陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn