feat: 使用新机制实现 unicode range
This commit is contained in:
parent
f8fe348e1e
commit
1d915f347f
@ -187,110 +187,8 @@ func GetCjkRange(code int) string {
|
|||||||
result = "EXT-I"
|
result = "EXT-I"
|
||||||
} else if code == 0x3007 {
|
} else if code == 0x3007 {
|
||||||
result = "零"
|
result = "零"
|
||||||
} else if code >= 0x31C0 && code <= 0x31EF {
|
|
||||||
result = "笔画"
|
|
||||||
} else if code >= 0x2E80 && code <= 0x2EFF {
|
|
||||||
result = "部首补充"
|
|
||||||
} else if code >= 0xE000 && code <= 0xF8FF {
|
} else if code >= 0xE000 && code <= 0xF8FF {
|
||||||
result = "PUA"
|
result = "PUA"
|
||||||
} else if code >= 0x2F00 && code <= 0x2FDF {
|
|
||||||
result = "康熙部首"
|
|
||||||
} else if code >= 0xF900 && code <= 0xFAD9 {
|
|
||||||
result = "兼容区"
|
|
||||||
} else if code >= 0xFE30 && code <= 0xFE4F {
|
|
||||||
result = "兼容形式"
|
|
||||||
} else if code >= 0x2F800 && code <= 0x2FA1D {
|
|
||||||
result = "兼容表意文字增补"
|
|
||||||
} else if code >= 0x3100 && code <= 0x312F {
|
|
||||||
result = "注音"
|
|
||||||
} else if code >= 0x17000 && code <= 0x187F7 {
|
|
||||||
result = "西夏文"
|
|
||||||
} else if code >= 0x18800 && code <= 0x18AFF {
|
|
||||||
result = "西夏文部首"
|
|
||||||
} else if code >= 0x18D00 && code <= 0x18D08 {
|
|
||||||
result = "西夏文增补"
|
|
||||||
} else if code >= 0x18B00 && code <= 0x18CFF {
|
|
||||||
result = "契丹文"
|
|
||||||
} else if code >= 0x0900 && code <= 0x097F {
|
|
||||||
result = "梵文"
|
|
||||||
} else if code >= 0x1B170 && code <= 0x1B2FF {
|
|
||||||
result = "女书"
|
|
||||||
} else if code >= 0x0F00 && code <= 0x0FFF {
|
|
||||||
result = "藏文"
|
|
||||||
} else if code >= 0x1800 && code <= 0x18AF {
|
|
||||||
result = "蒙古语"
|
|
||||||
} else if code >= 0x30A0 && code <= 0x30FF {
|
|
||||||
result = "日文片假名"
|
|
||||||
} else if code >= 0x31F0 && code <= 0x31FF {
|
|
||||||
result = "片假名扩展"
|
|
||||||
} else if code >= 0x3040 && code <= 0x309F {
|
|
||||||
result = "日文平假名"
|
|
||||||
} else if code >= 0x3000 && code <= 0x303F {
|
|
||||||
result = "符号和标点符号"
|
|
||||||
} else if code >= 0x2E00 && code <= 0x2E7F {
|
|
||||||
result = "补充标点符号"
|
|
||||||
} else if code >= 0x2200 && code <= 0x22FF {
|
|
||||||
result = "数学运算符号"
|
|
||||||
} else if code >= 0x2A00 && code <= 0x2AFF {
|
|
||||||
result = "补充数学运算符"
|
|
||||||
} else if code >= 0x2150 && code <= 0x218F {
|
|
||||||
result = "数字形式符号"
|
|
||||||
} else if code >= 0x2300 && code <= 0x23FF {
|
|
||||||
result = "杂项技术符号"
|
|
||||||
} else if code >= 0x27C0 && code <= 0x27EF {
|
|
||||||
result = "杂项数学符号-A"
|
|
||||||
} else if code >= 0x2980 && code <= 0x29FF {
|
|
||||||
result = "杂项数学符号-B"
|
|
||||||
} else if code >= 0x2190 && code <= 0x21FF {
|
|
||||||
result = "箭头符号"
|
|
||||||
} else if code >= 0x3190 && code <= 0x319F {
|
|
||||||
result = "汉文训读"
|
|
||||||
} else if code >= 0x3200 && code <= 0x32FF {
|
|
||||||
result = "带圈字符及月份"
|
|
||||||
} else if code >= 0x1F100 && code <= 0x1F1FF {
|
|
||||||
result = "带圈字母数字补充"
|
|
||||||
} else if code >= 0x1F200 && code <= 0x1F2FF {
|
|
||||||
result = "带圈表意文字补充"
|
|
||||||
} else if code >= 0x1D100 && code <= 0x1D1FF {
|
|
||||||
result = "音乐符号"
|
|
||||||
} else if code >= 0x1D360 && code <= 0x1D37F {
|
|
||||||
result = "算筹"
|
|
||||||
} else if code >= 0x1D300 && code <= 0x1D35F {
|
|
||||||
result = "太玄经符号"
|
|
||||||
} else if code >= 0x1F600 && code <= 0x1F64F {
|
|
||||||
result = "表情符号"
|
|
||||||
} else if code >= 0x2070 && code <= 0x209F {
|
|
||||||
result = "上下标"
|
|
||||||
} else if code >= 0x1D400 && code <= 0x1D7FF {
|
|
||||||
result = "字母和数字符号"
|
|
||||||
} else if code >= 0x25A0 && code <= 0x25FF {
|
|
||||||
result = "几何形状"
|
|
||||||
} else if code >= 0x1F780 && code <= 0x1F7FF {
|
|
||||||
result = "几何图形扩展"
|
|
||||||
} else if code >= 0x2630 && code <= 0x2637 {
|
|
||||||
result = "八卦"
|
|
||||||
} else if code >= 0x19904 && code <= 0x19967 {
|
|
||||||
result = "易经六十四卦符号"
|
|
||||||
} else if code >= 0x1FA00 && code <= 0x1FA6F {
|
|
||||||
result = "象棋符号"
|
|
||||||
} else if code >= 0x0370 && code <= 0x03FF {
|
|
||||||
result = "希腊语和科普特语"
|
|
||||||
} else if code >= 0x1F000 && code <= 0x1F02F {
|
|
||||||
result = "麻将牌"
|
|
||||||
} else if code >= 0x1F0A0 && code <= 0x1F0FF {
|
|
||||||
result = "扑克牌"
|
|
||||||
} else if code >= 0x20A0 && code <= 0x20CF {
|
|
||||||
result = "货币符号"
|
|
||||||
} else if code >= 0x1F680 && code <= 0x1F6FF {
|
|
||||||
result = "交通和地图符号"
|
|
||||||
} else if code >= 0x1F030 && code <= 0x1F09F {
|
|
||||||
result = "多米诺骨牌"
|
|
||||||
} else if code >= 0x1F300 && code <= 0x1F5FF {
|
|
||||||
result = "杂项符号和象形文字"
|
|
||||||
} else if code >= 0x2500 && code <= 0x257F {
|
|
||||||
result = "方框绘制字符"
|
|
||||||
} else if code >= 0x1F700 && code <= 0x1F77F {
|
|
||||||
result = "炼金术符号"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return result
|
return result
|
||||||
|
2451
helper/unicode_helper.go
Normal file
2451
helper/unicode_helper.go
Normal file
File diff suppressed because it is too large
Load Diff
21
helper/unicode_helper_test.go
Normal file
21
helper/unicode_helper_test.go
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
//
|
||||||
|
// unicode_helper_test.go
|
||||||
|
// Copyright (C) 2023 tiglog <me@tiglog.com>
|
||||||
|
//
|
||||||
|
// Distributed under terms of the MIT license.
|
||||||
|
//
|
||||||
|
|
||||||
|
package helper_test
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
"git.hexq.cn/tiglog/golib/helper"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestGetRange(t *testing.T) {
|
||||||
|
hp := helper.NewUnicodeHelper()
|
||||||
|
r1 := hp.GetRange(0xe0)
|
||||||
|
fmt.Println(r1)
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user