Функция isSurrogate
Функция isSurrogate
проверяет, является ли символ
суррогатным кодом в UTF-16 кодировке. Суррогатные пары
используются для представления символов Unicode
за пределами Basic Multilingual Plane (BMP).
Принимает один параметр типа Char
и возвращает
Boolean
значение.
Синтаксис
fun Char.isSurrogate(): Boolean
Пример
Проверим, является ли обычный символ суррогатным:
val ch: Char = 'A'
val res: Boolean = ch.isSurrogate()
println(res)
Результат выполнения кода:
Boolean false
Пример
Проверим суррогатный символ:
val ch: Char = '\uD800'
val res: Boolean = ch.isSurrogate()
println(res)
Результат выполнения кода:
Boolean true
Пример
Проверка нескольких символов в строке:
val text: String = "A\uD800B\uDC00C"
for (ch in text) {
val isSurrogate: Boolean = ch.isSurrogate()
println("'$ch': $isSurrogate")
}
Результат выполнения кода:
'A': false
'?': true
'B': false
'?': true
'C': false
Пример
Использование функции для обработки строки с суррогатными парами:
val text: String = "Hello\uD83D\uDE00World"
var surrogateCount: Int = 0
for (ch in text) {
if (ch.isSurrogate()) {
surrogateCount++
}
}
println("Found $surrogateCount surrogate characters")
Результат выполнения кода:
Int 2
Смотрите также
-
функцию
isHighSurrogate
,
которая проверяет, является ли символ старшим суррогатом -
функцию
isLowSurrogate
,
которая проверяет, является ли символ младшим суррогатом -
функцию
isLetter
,
которая проверяет, является ли символ буквой -
функцию
isDigit
,
которая проверяет, является ли символ цифрой