Filtrado de etiquetas de anclaje en una cadena
Pregunta
Necesito filtrar las etiquetas de anclaje en una cadena. Por ejemplo,
Check out this site: <a href="http://www.stackoverflow.com">stackoverflow</a>
Necesito poder filtrar la etiqueta de anclaje a esto:
Check out this site: http://www.stackoverflow.com
Ese formato puede no ser constante, tampoco. Podría haber otros atributos para la etiqueta de anclaje. Además, podría haber más de 1 etiqueta de anclaje en la cadena. Estoy haciendo el filtrado en vb.net antes de que vaya a la base de datos.
Solución
Aquí hay una expresión regular simple que debería funcionar.
Imports System.Text.RegularExpressions
' ....
Dim reg As New Regex("<a.*?href=(?:'|"")(.+?)(?:'|"").*?>.+?</a>")
Dim input As String = "This is a link: <a href='http://www.stackoverflow.com'>Stackoverflow</a>"
input = reg.Replace(input, "$1", RegexOptions.IgnoreCase)
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow