Функция isSurrogate

Функция isSurrogate проверяет, является ли символ суррогатным кодом в UTF-16 кодировке. Суррогатные пары используются для представления символов Unicode за пределами Basic Multilingual Plane (BMP). Принимает один параметр типа Char и возвращает Boolean значение.

Синтаксис

kotlinfun Char.isSurrogate(): Boolean

Пример

Проверим, является ли обычный символ суррогатным:

kotlinval ch: Char = 'A'
val res: Boolean = ch.isSurrogate()
println(res)

Результат выполнения кода:

kotlinBoolean false

Пример

Проверим суррогатный символ:

kotlinval ch: Char = '\uD800'
val res: Boolean = ch.isSurrogate()
println(res)

Результат выполнения кода:

kotlinBoolean true

Пример

Проверка нескольких символов в строке:

kotlinval text: String = "A\uD800B\uDC00C"

for (ch in text) {
  val isSurrogate: Boolean = ch.isSurrogate()
  println("'$ch': $isSurrogate")
}

Результат выполнения кода:

kotlin'A': false
'?': true
'B': false
'?': true
'C': false

Пример

Использование функции для обработки строки с суррогатными парами:

kotlinval text: String = "Hello\uD83D\uDE00World"
var surrogateCount: Int = 0

for (ch in text) {
  if (ch.isSurrogate()) {
    surrogateCount++
  }
}

println("Found $surrogateCount surrogate characters")

Результат выполнения кода:

kotlinInt 2

Смотрите также

  • функцию isHighSurrogate,
    которая проверяет, является ли символ старшим суррогатом
  • функцию isLowSurrogate,
    которая проверяет, является ли символ младшим суррогатом
  • функцию isLetter,
    которая проверяет, является ли символ буквой
  • функцию isDigit,
    которая проверяет, является ли символ цифрой