Regex para obtener el valor src de una etiqueta img

Estoy usando la siguiente expresión regular para obtener el valor src de la primera etiqueta img en un documento HTML.

 string match = "src=(?:\"|\')?(?[^>]*[^/].(?:jpg|png))(?:\"|\')?" 

Ahora captura el atributo src total que no necesito. Solo necesito la url dentro del atributo src . ¿Cómo hacerlo?

Analice su HTML con otra cosa. HTML no es regular y, por lo tanto, las expresiones regulares no son adecuadas para analizarlo.

Use un analizador HTML o un analizador XML si el HTML es estricto. Es mucho más fácil obtener el valor del atributo src usando XPath:

 //img/@src 

El análisis XML está integrado en el espacio de nombres System.Xml . Es increíblemente poderoso. El análisis HTML es un poco más difícil si el HTML no es estricto, pero hay muchas bibliotecas alrededor que lo harán por usted.

ver cuándo no usar Regex en C # (o Java, C ++, etc.) y buscar el analizador HTML C #

PD, ¿cómo puedo poner un enlace a una pregunta de StackOverflow en un comentario?

Su expresión regular debería coincidir (en inglés) con cualquier carácter después de una cita, eso no es una cita dentro de una etiqueta en el atributo src.

En perl regex, sería así:

 /src=[\"\']([^\"\']+)/ 

La URL estará en $1 después de ejecutar esto.

Por supuesto, esto supone que las URL en sus atributos src están cotizadas. Puede modificar los valores en los corchetes [] consecuencia si no lo están.