Estoy creando una macro de conveniencia. Parte de la conveniencia es que una expresión regular se puede especificar con solo una cadena, en lugar de la notación # "re".¿Cómo escribo una macro de Clojure para crear una expresión regular a partir de una cadena?
La única parte que no puedo entender es cómo hacer que la macro tome la cadena y volver a escribirla como una expresión regular Clojure (por ejemplo, producir la notación # "re"). Creo que es un problema de sintaxis/escape.
Mi primer intento ingenuo (pretendiendo sólo quiero la parte de cadena a expresiones regulares):
(defmacro mymac [mystr] `#~mystr)
¿Es incluso posible hacer lo que estoy tratando de hacer? O, ¿hay una función real para tomar una cadena y producir una expresión regular, en lugar de utilizar la macro # lector?
¿O debería simplemente caer en Java y usar java.util.regex.Pattern?
sí, hace exactamente lo que quiero. pero tienes que admitir que no es tan bonito como j-g-faustus (re-pattern "mystr") – dirtyvagabond
No, de hecho no. – Sean