Size: a a a

Clojure — русскоговорящее сообщество

2020 November 08

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Ну то есть идея в том, что я "интерполирую" регулярки в строку, и так достаю из строки нужные кусочки
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Mikhail Borisov
Например, у меня есть функция (defn russian-word [param-name] ...), которая собирает строку (str "(?<" param-name ">[а-яА-я]+)")

Используется это так:

(regex (str "Привет, " (russian-word "name") ", как дела?"))
ну, и если russian-word идёт, например, в базу (ну недоступно на этапе компиляции по какой-то причине), то это всё будет валиться с загадочными сообщениями?
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Sergey Trofimov
ну, и если russian-word идёт, например, в базу (ну недоступно на этапе компиляции по какой-то причине), то это всё будет валиться с загадочными сообщениями?
то есть я не могу понять, как это может работать с выражениями, которые при компиляции невычесляемы
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
В моем случае, у меня есть много таких регулярок и мне нужно если сматчилась одна из них, собрать соответствующую мапу
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Sergey Trofimov
то есть я не могу понять, как это может работать с выражениями, которые при компиляции невычесляемы
Нет пользователя, который может такие регулярки собирать, я просто себе для читаемости это сделал
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Ну и пространство для ошибки хотел убрать, мне нужно один раз проверить, что russian-word собирает правильную рабочую регулярку и все ок дальше
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Вот другая реализация, но на ту же тему
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Есть джсон вот такого вида
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Мне нужно по нему пройтись и вытащить нужные параметры
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Mikhail Borisov
Вот другая реализация, но на ту же тему
А вот это "DSL", чтобы удобно описывать этот парсинг. То, что напарсилось выше по пути, передается в мапе параметров вниз
источник

CD

Camina Drummer in Clojure — русскоговорящее сообщество
Sergey Trofimov
просто он быстрее для векторов, чем get
Блин, вот жалко что таких моментов в доке нет
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Camina Drummer
Блин, вот жалко что таких моментов в доке нет
Есть же
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Camina Drummer
Блин, вот жалко что таких моментов в доке нет
Я кстати существенной разницы в своем случае не заметил, но у меня наверное другое львиную часть времени кушает)
источник

CD

Camina Drummer in Clojure — русскоговорящее сообщество
Можно пример?
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
В любом случае, premature optimization...
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Mikhail Borisov
Вот другая реализация, но на ту же тему
У меня просто вот эта часть будет делать основную вычислительную работу, поэтому я начал извращениями заниматься
источник

MB

Mikhail Borisov in Clojure — русскоговорящее сообщество
Mikhail Borisov
А вот это "DSL", чтобы удобно описывать этот парсинг. То, что напарсилось выше по пути, передается в мапе параметров вниз
:exact тут это просто сравнение строк (без регулярок)
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Camina Drummer
Можно пример?
А не, нет)))))
источник

CD

Camina Drummer in Clojure — русскоговорящее сообщество
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Camina Drummer
Блин, вот жалко что таких моментов в доке нет
книжки есть
например та, из которой страшный скриншот вчера был 😊
источник