Expresión regular mejorada para URL coincidentes
Al intentar detectar y analizar URL a partir de la entrada del usuario, es fundamental utilizar una expresión regular eficaz. En su caso, si bien su expresión actual captura algunos formatos de URL, no tiene en cuenta las URL que carecen de un esquema de protocolo explícito, como www.google.com.
Expresión regular revisada
Para solucionar este problema y garantizar una coincidencia completa de URL, considere utilizar la siguiente versión regular revisada expresión:
^(?=\S{1,255}$)(https?://)?[-a-zA-Z0-9@:%._\ ~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\ .~#?&//=]*)
Anatomía de la expresión regular
Esta expresión regular revisada es menos restrictiva y coincidirá correctamente con URL como www.google.com, así como aquellos con protocolos explícitos (por ejemplo, http://www.stackoverflow.com).
Ejemplo de implementación (JavaScript)
const regex = new RegExp(/(?=\S{1,255}$)(https?://)?[-a-zA-Z0-9@:%._\ ~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\ .~#?&//=]*)g); const url = 'www.google.com'; if (url.match(regex)) { console.log("URL successfully matched."); } else { console.log("URL did not match."); }
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3