Estoy leyendo Douglas Crockfords Javascript: The Good Parts, acabo de terminar el capítulo de expresiones regulares. En este capítulo se llama, de búsqueda positiva hacia (?=)
y búsqueda negativa hacia delante (?!)
"no es una buena parte" de \b
JavaScriptJavaScript: Las buenas partes; ¿Por qué no es bueno mirar hacia adelante?
Explica la razón de \b
ser no es bueno (que utiliza \w
para la búsqueda de límite de palabra, y \w
falla por cualquier lenguaje que usa caracteres Unicode), y eso parece una muy buena razón para mí.
Desafortunadamente, la razón por la que la anticipación positiva y negativa no es buena queda fuera, y no puedo encontrar una. Mastering Regular Expressions me mostró el poder que viene con la búsqueda anticipada (y por supuesto explica los problemas que conlleva), pero realmente no puedo pensar en nada que lo califique como "no una buena parte".
¿Alguien puede explicar por qué JavaScript (positive | negative) lookahead o (positive | negative) lookahead en general deberían considerarse "no buenos"?
Parece que no soy el único con esta pregunta: one y two.
En el momento en que leí esa frase la busqué en Google y se me ocurrió esto. Muy extraño, todo lo demás que dice tiene mucho sentido, y casi siempre explica sus razones para decir que las cosas son "malas". – Skilldrick
Estoy de acuerdo con @Skilldrick. Crockford ha sido muy bueno en explicar su razonamiento para casi cada punto que hace en este libro, pero en este caso no explica nada en absoluto. Yo también busqué en Google después de no encontrar ninguna explicación y terminé aquí. Me parece que los aspectos positivos/negativos son impresionantes siempre que entiendas cómo funcionan y el impacto potencialmente negativo que podrían tener en el rendimiento si se usan de forma inapropiada. – Chev