Expresiones regulares·un URI data: en base64

un URI data: en base64

Coincide con un URI data: en base64. Está anclado en ambos extremos, así que debe coincidir la cadena entera. No tiene grupos de captura.

Patrón
/^data:[a-z]+\/[a-z0-9.+-]+;base64,[A-Za-z0-9+/]+=*$/
Alcance
la cadena entera
Grupos de captura
0
Lo que captura en el primer ejemplo
data:image/png;base64,iVBORw0KGgo=

Pruébalo

Escribe cualquier texto y se marcará lo que captura la expresión. Todo ocurre en tu navegador y no se envía a ninguna parte.

data:image/png;base64,iVBORw0KGgo=

1 coincidencia

Ejemplos que coinciden

  • data:image/png;base64,iVBORw0KGgo=
  • data:text/plain;base64,aGk=

Ejemplos que no coinciden

  • data:image/png,abc
  • https://a.com/b.png

Otras expresiones del grupo

Cómo leerlo

  • Con ^ y $ alrededor, debe coincidir la cadena entera; sin ellos, la coincidencia puede estar en cualquier parte. Ancla siempre lo que uses para validar.
  • Los paréntesis ( ) capturan lo que envuelven. Si solo necesitas agrupar, escribe (?: ) para que no se desplace la numeración.
  • Cada expresión de aquí se comprueba con sus ejemplos. Aun así, "parece un correo" y "es un buzón real" son cosas distintas.
  • Las repeticiones abiertas anidadas como (a+)+ pueden dispararse con ciertas entradas. Busca esa forma antes de pegar una expresión ajena.

Preguntas frecuentes

Q. ¿Cuál es la regex para un URI data: en base64?

^data:[a-z]+\/[a-z0-9.+-]+;base64,[A-Za-z0-9+/]+=*$.

Q. ¿Qué cadenas coinciden?

Un texto como data:image/png;base64,iVBORw0KGgo= coincide; uno como data:image/png,abc no.

Q. ¿Debe coincidir la cadena entera?

Sí. Va entre ^ y $, así que solo pasa una coincidencia completa.

Q. ¿Cómo uso lo capturado?

No hay grupos de captura, así que solo vuelve la coincidencia completa (match[0]). Envuelve entre paréntesis la parte que necesites.