Estoy buscando una expresión regular que pueda extraer URI de http de un archivo (texto arbitrario). Tenga en cuenta que el texto puede tener la palabra "http", pero esa palabra puede o no representar una dirección URI válida.
ACTUALIZACIÓN: entiendo que HTML es una gramática libre de contexto, mientras que RegEx es una expresión regular pero que los URI son solo patrones (expresión regular). ¿O no?
Found this at http://somesite.com/foo.
", donde ni las expresiones regulares ni las gramáticas libres de contexto pueden determinar de manera confiable si". "final debe ser parte de la URL o no y es poco probable que el enlace funcione si el analizador se equivoca.Respuestas:
Es más difícil de lo que piensas y ninguna expresión regular es tan fácil de atraparlos a todos.
Considera las URL como esta
Aquí hay un buen artículo corto sobre el tema. ¿Una buena expresión regular de url?
Aquí hay otro un poco más corto de Un patrón mejorado y exacto de expresiones regulares para URL coincidentes
fuente
Tal vez algo como esto:
fuente