Expressões regulares·uma imagem de Markdown

uma imagem de Markdown

Casa com uma imagem de Markdown. Encontra em qualquer parte do texto. Tem 2 grupos de captura.

Padrão
/!\[([^\]]*)\]\(([^)]+)\)/
Alcance
em qualquer parte do texto
Grupos de captura
2
O que captura no primeiro exemplo
![고양이](cat.png)

Experimente

Digite qualquer texto e as partes capturadas serão marcadas. Tudo roda no seu navegador e nada é enviado.

![고양이](cat.png) before ![](x.jpg) after

2 correspondências

Exemplos que casam

  • ![고양이](cat.png)
  • before ![](x.jpg) after

Exemplos que não casam

  • [link](a.com)
  • no image here

Outras expressões do grupo

Como ler

  • Com ^ e $ em volta, a cadeia inteira precisa casar; sem eles, a correspondência pode estar em qualquer lugar. Ancore sempre o que usar para validar.
  • Os parênteses ( ) capturam o que envolvem. Se você só precisa agrupar, escreva (?: ) para a numeração não se deslocar.
  • Cada expressão aqui é conferida com seus exemplos. Ainda assim, "parece um e-mail" e "é uma caixa real" são coisas diferentes.
  • Repetições abertas aninhadas como (a+)+ podem explodir com certas entradas. Procure esse formato antes de colar uma expressão alheia.

Perguntas frequentes

Q. Qual é a regex para uma imagem de Markdown?

!\[([^\]]*)\]\(([^)]+)\).

Q. Quais cadeias casam?

Um texto como ![고양이](cat.png) casa; um como [link](a.com) não.

Q. A cadeia inteira precisa casar?

Não. Encontra a parte em qualquer lugar do texto. Coloque ^ e $ em volta para verificar a cadeia inteira.

Q. Como uso o que foi capturado?

Há 2 grupos de captura, então dá para ler a partir de match[1].