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

sql sever 字串截取漢字

伊谢尔伦
伊谢尔伦原創
2016-12-03 10:19:351224瀏覽

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

寫成了一個function

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

create function CharRep(@str nvarchar(200))

returns nvarchar(200)🠎 , @char nvarchar(1), @zh nvarchar(200)

 set @i = 1

 set @zh = ''
 while @i  begin
  set @char = substring(@str)
 begin
  set @char = substring( @i, 1)
  if  unicode(@char) between 19968 And 40869
   set @zh = @zh + @char
  set @i = @i + 1
 end🜎 .CharRep('儂好a/bc  儂好')

結果  a/bc

附:

unicode或編碼範圍:

漢字:[0x4e00,0x9fa5](或編碼範圍:

漢字:[0x4e00,0x9fa5](或編碼範圍:

漢字:[0x4e00,0x9fa5](或十進位[19968) 0x30,0x39](或十進位[48, 57])搜尋

小寫字母:[0x61,0x7a](或十進位[97, 122])

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


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