ホームページ >データベース >mysql チュートリアル >SQLサーバー文字列の中国語文字のインターセプト

SQLサーバー文字列の中国語文字のインターセプト

伊谢尔伦
伊谢尔伦オリジナル
2016-11-24 15:30:571398ブラウズ

最近、SQL 文字列から中国語の文字をインターセプトし、unicode 関数を使用して文字の Unicode エンコードを決定し、エンコード範囲に従って中国語以外の文字を除外する必要があります。

関数として書く

/*@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('Nonghao a/bc Nonghao')を実行

結果a/bc

添付:

Unicodeエンコード範囲:
漢字: [0x4e00,0x9fa5] (または10進数[19968, 40869])
数値: [0x30, 0x39] (または10進数[48, 57]) 検索
小文字: [ 0x61, 0x7a] (または 10 進数 [97, 122])
大文字: [0x41,0x5a] (または 10 進数 [65, 90])


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。