Skip to content

character_length(str)

Описание

Функция character_length() возвращает длину строки в символах или количество байтов для бинарных данных. Это синоним функции char_length().

Параметры

  • str: string или Column - строка или бинарные данные, длину которых нужно вычислить

Возвращаемое значение

Integer - длина строки в символах или количество байтов

Пример использования

from pyspark.sql.functions import character_length

# Создаем DataFrame
df = spark.createDataFrame([
    ("Hello",),
    ("Привет",),  # Кириллица
    ("こんにちは",),  # Японский
    ("",),  # Пустая строка
    (None,)  # NULL
], ["text"])

# Вычисляем длину строк
df.select(
    "text",
    character_length("text").alias("length")
).show()

# Результат:
# +--------+------+
# |    text|length|
# +--------+------+
# |   Hello|     5|  # 5 символов
# |  Привет|     6|  # 6 символов (кириллица)
# |こんにちは|     5|  # 5 символов (японский)
# |        |     0|  # Пустая строка
# |    null|  null|  # NULL
# +--------+------+

Примечания

  • Для строк функция возвращает количество символов
  • Для бинарных данных возвращает количество байтов
  • Для пустой строки возвращает 0
  • Для NULL значений возвращает NULL
  • Функция учитывает многобайтовые символы (UTF-8)
  • Это синоним функции char_length()
  • Для получения длины в байтах используйте octet_length()