substr(col, pos, len)
Описание
Функция substr()
возвращает подстроку, начиная с указанной позиции и указанной длины. Это синоним для substring()
.
Параметры
col
: Column - столбец со строкамиpos
: Integer - начальная позиция подстроки (1-индексированная)len
: Integer - длина подстроки
Возвращаемое значение
String - подстрока указанной длины, начиная с указанной позиции
Пример использования
from pyspark.sql.functions import substr
from pyspark.sql import SparkSession
# Создаем SparkSession
spark = SparkSession.builder.appName("substr_example").getOrCreate()
# Создаем DataFrame
data = [
("Hello World"),
("Spark SQL"),
("Python Spark")
]
df = spark.createDataFrame(data, ["text"])
# Извлекаем подстроки
result = df.select(
"text",
substr("text", 1, 5).alias("first_5"),
substr("text", 7, 5).alias("from_7")
).show()
# Результат:
# +------------+-------+-------+
# |text |first_5|from_7 |
# +------------+-------+-------+
# |Hello World |Hello |World |
# |Spark SQL |Spark |SQL |
# |Python Spark|Python |Spark |
# +------------+-------+-------+
Примечания
- Позиции в строке нумеруются с 1
- Если
pos
отрицательный, отсчет ведется с конца строки - Если
len
больше длины оставшейся строки, возвращается вся оставшаяся строка - NULL значения возвращают NULL
- Функция эквивалентна
substring()