Post Top Ad

Your Ad Spot

lunes, 27 de julio de 2020

Construya un probador de expresión regular con Laravel

Construya un probador de expresión regular con Laravel

En el último episodio, creamos un probador de expresiones regulares con PHP. Hace lo que necesitamos, pero es realmente limitado y no se ve tan bien. En este episodio, vamos a Larafy it. Vamos a reconstruir el probador de expresiones regulares usando Laravel. Esta debería ser una buena prueba de piratear algo rápido y sucio usando PHP nativo en lugar de construirlo en un marco como Laravel. Los dos enfoques son realmente diferentes, y este pequeño ejercicio nos dará una buena idea de cómo cambiar nuestro pensamiento. Vamos a ver.


Laravel 4.2

Para este ejemplo, vamos a hacer uso de Laravel 4.2. Aunque todos estamos ansiosos por Laravel 5 y todas las nuevas características geniales que tiene, todavía es un objetivo en movimiento a medida que las cosas cambian, por lo que nos quedaremos con Laravel 4.2 por ahora. Vamos a imitar lo que hicimos en la primera iteración de este proyecto sin un marco. Esta es la primera iteración con Laravel, y estoy adoptando el enfoque de simplemente, hacer que algo funcione y luego preocuparme por refactorizar más tarde. Entonces eso es lo que haremos.

routes.php

master.blade.php

regex.blade.php

Estos tres archivos conforman la aplicación. Probémoslo.

Visitar la aplicación por primera vez

En primer lugar, solo queremos asegurarnos de que cuando visitamos el probador de expresiones regulares, se cargue correctamente y no recibamos ningún error o mensaje aleatorio que no debería estar allí. Visitamos http://localhost/laravel/public/y todo se ve bien.
probador de expresión regular laravel

Enviar una prueba de expresión regular sin patrón

Probamos la validación enviando una prueba sin completar el patrón regex. Vemos que la validación funciona muy bien, ya que recibimos el mensaje de error como se muestra aquí.
validación de lagevel regex

Enviar una prueba de expresión regular sin sujeto

Probar el formulario sin incluir un tema muestra que la validación también funciona aquí.
laravel regex validación dos

Ejemplo de coincidencias exitosas de expresiones regulares

Ahora que vemos cómo funciona la validación básica, vamos a probar algunas coincidencias reales de expresiones regulares con un sujeto y patrón válidos. Podemos ver que al enviar nuestra prueba, recibimos un buen mensaje flash con el número de coincidencias en una nueva línea. En este caso coincidimos con 'Laravel' y encontramos dos coincidencias. ¡Frio!
laravel expresión regular coincidencia exitosa

¿Qué sucede cuando no hay coincidencias?

Necesitamos dar cuenta de cuándo no hay coincidencias para nuestra prueba de expresión regular. Esto está integrado y podemos probar esto ahora. Lo bueno es que podemos dejar nuestra cadena de prueba en su lugar en el área de texto del tema, ya que tenemos la aplicación configurada para repoblar el formulario en cada iteración. Nuestra cadena actual de 'Este es un texto de ejemplo sobre Laravel y ahora haremos coincidir Laravel con una expresión regular'. no tiene números, así que intentemos hacer coincidir un número con una expresión regular para ver cómo la aplicación maneja esto. Podemos ver que cuando tratamos de hacer coincidir un dígito, recibimos un buen mensaje de error como este.
laravel expresiones regulares no coincide

Capturando excepciones en nuestra aplicación Little Laravel

Habrá casos en los que proporcionemos un patrón a la aplicación que la función preg_match_all no entienda bajo el capó. En esos casos, queremos capturar la excepción que se produce y mostrarla de una manera agradable. De lo contrario, obtendremos los errores feos habituales que vemos cuando PHP falla en un script. Debido a la secuencia de prueba de captura que incluimos en la lógica, esto también funciona bastante bien. En este ejemplo podemos ver un mensaje de preg_match_all (): Modificador desconocido 'd'.
excepciones de captura de expresiones regulares

No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

outbrain

Páginas