🎒 fix: 兼容分组名字有英文与数字组合的情况,配置文件添加注释说明 (#105)
This commit is contained in:
parent
ef652a366b
commit
12aa33e37d
|
@ -101,6 +101,7 @@ ldap:
|
|||
group-name-modify: false
|
||||
# 是否允许更改用户DN
|
||||
user-name-modify: false
|
||||
# 📢 即便用不到如下三段配置信息,也不要删除,否则会有一些奇怪的错误出现
|
||||
dingtalk:
|
||||
# 配置获取详细文档参考: http://ldapdoc.eryajf.net/pages/94f43a/
|
||||
flag: "dingtalk" # 作为钉钉在平台的标识
|
||||
|
|
|
@ -17,6 +17,12 @@ func isEnglish(str string) bool {
|
|||
return match
|
||||
}
|
||||
|
||||
// 是否为英文与数字组合
|
||||
func isEnglishAndNum(str string) bool {
|
||||
match, _ := regexp.MatchString(`^[a-zA-Z0-9_-]+$`, str)
|
||||
return match
|
||||
}
|
||||
|
||||
// 是否全为中文
|
||||
func isChinese(s string) bool {
|
||||
for _, r := range s {
|
||||
|
@ -32,7 +38,8 @@ func isChinese(s string) bool {
|
|||
1.如果名字中有横杠或者下划线连接,将会删去下划线再处理
|
||||
2.全是中文:直接转拼音
|
||||
3.全是英文:不进行处理,原文呈现
|
||||
4.如果是中英混合,那么分以下几种情况
|
||||
4.英文与数字组合,不进行处理,原文呈现
|
||||
5.如果是中英混合,那么分以下几种情况
|
||||
1.开头是中文,结尾不是中文:进入Convert逻辑第一种
|
||||
2.开头不是中文,结尾不是中文:进入Convert逻辑第一种
|
||||
3.开头不是中文,结尾是中文:进入Convert逻辑第三种
|
||||
|
@ -56,7 +63,7 @@ func Convert(src string) string {
|
|||
if isChinese(src) { // 全是中文
|
||||
return strings.Join(pinyin.LazyConvert(src, nil), "")
|
||||
}
|
||||
if isEnglish(src) { // 全是英文
|
||||
if isEnglish(src) || isEnglishAndNum(src) { // 全是英文,或者为英文与数字组合
|
||||
return src
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue