Skip to content

regexp_like(col, pattern)

Описание

Функция regexp_like() проверяет, соответствует ли строка регулярному выражению. Это синоним для rlike() и regexp().

Параметры

  • col: Column - столбец со строками для проверки
  • pattern: String - регулярное выражение для сопоставления

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

Boolean - TRUE, если строка соответствует регулярному выражению, иначе FALSE

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

from pyspark.sql.functions import regexp_like
from pyspark.sql import SparkSession

# Создаем SparkSession
spark = SparkSession.builder.appName("regexp_like_example").getOrCreate()

# Создаем DataFrame
data = [
    ("2023-01-01"),
    ("invalid_date"),
    ("2023-12-31")
]
df = spark.createDataFrame(data, ["date"])

# Проверяем соответствие дат формату YYYY-MM-DD
result = df.select(
    "date",
    regexp_like("date", "^\\d{4}-\\d{2}-\\d{2}$").alias("is_valid_date")
).show()

# Результат:
# +------------+------------+
# |date        |is_valid_date|
# +------------+------------+
# |2023-01-01  |true        |
# |invalid_date|false       |
# |2023-12-31  |true        |
# +------------+------------+

Примечания

  • Функция чувствительна к регистру
  • NULL значения возвращают NULL
  • Для извлечения подстрок по регулярному выражению используйте regexp_extract()
  • Для замены по регулярному выражению используйте regexp_replace()
  • Для подсчета совпадений используйте regexp_count()