Я прочитал несколько сообщений об использовании оператора «нравится» для фильтрации кадра данных искры по условию содержания строки/выражения, но мне было интересно, является ли следующая «наилучшей практикой» использование% s в желаемом состоянии как следует:
input_path = <s3_location_str>
my_expr = "Arizona.*hot" # a regex expression
dx = sqlContext.read.parquet(input_path) # "keyword" is a field in dx
# is the following correct?
substr = "'%%%s%%'" %my_keyword # escape % via %% to get "%"
dk = dx.filter("keyword like %s" %substr)
# dk should contain rows with keyword values such as "Arizona is hot."
Примечание
Я пытаюсь получить все строки в dx, которые содержат выражение my_keyword. В противном случае для точных совпадений нам не понадобились бы окружающие знаки процента '%'.