Какое регулярное выражение следует использовать для поиска определенной информации?

Конечно, вот улучшенная формулировка вашего вопроса:

Как составить регулярное выражение для извлечения определенного номера из поля таблицы, содержащего много текста? Например, у нас есть следующий текст: <br/> текс :/D/сам номер который нужен\r\n: текст <br/> Нам нужно написать регулярное выражение, которое найдет определенный символ или группу символов, захватит всё, что идет после этого символа, и прекратит захват при встрече следующего символа.
  • 27 мая 2024 г. 15:11
Ответы на вопрос 3
Для данной задачи можно использовать следующее регулярное выражение:
```regex
:([\s\S]*?)\\r\n
```
Это выражение найдет символ ":", захватит всю последующую текстовую информацию (включая перенос строки), и прекратит захват при обнаружении символов "\\r\n".
Сами пробовали? Что не получилось? 
https://regex101.com
В Apache Spark обычно нет таблиц. Дата-инженер оперирует абстракциями 
- RDD
- DataFrame
- DataSet (почти тоже самое что датафрейм)


Когда у тебя в одной руке датафрейм - ты можешь уже к нему применить фильтр с регуляркой тип

df.filter(col("name").rlike("(?i)^*rose$")).show()

Если сильно хочется - то поверх датафрейма создается View через

df.createOrReplace......View("view_name")

И с ним работают.

spark.sql("SELECT .... WHERE col RLIKE ..... ").show()


Но это уже такой себе овер-инжинеринг. И если можно решить задачу на уровне датафреймов
то обычно так и решают. SQL и прочее подключают когда есть JOINS или какие-то особые условия
(catalyst optimizer нужен).
Похожие вопросы