我想知道一个字符串是否包含俄语/西里尔字符。
对于拉丁字符,我做这样的事情(伪代码):
text := "test"
for _, r := range []rune(text) {
if r >= 'a' && r <= 'z' {
return True
}
}
return False
俄语/西里尔字母表的相应方法是什么?
答案 0 :(得分:12)
这似乎有效
unicode.Is(unicode.Cyrillic, r) // r is a rune
答案 1 :(得分:1)
我继续根据this Unicode chart找到俄语大写字母的示例实现:
func isRussianUpper(text string) bool {
for _, r := range []rune(text) {
if r < '\u0410' || r > '\u042F' {
return false
}
}
return true
}
你可以这样做任何一组角色。只需修改您感兴趣的字符代码即可。