uma variável de ambiente do shell
Casa com uma variável de ambiente do shell. Encontra em qualquer parte do texto. Tem 1 grupo de captura.
Padrão
/\$\{?([A-Z_][A-Z0-9_]*)\}?/- Alcance
- em qualquer parte do texto
- Grupos de captura
- 1
- O que captura no primeiro exemplo
- $HOME
Experimente
Digite qualquer texto e as partes capturadas serão marcadas. Tudo roda no seu navegador e nada é enviado.
$HOME
${DATABASE_URL}
echo $PATH
3 correspondências
Exemplos que casam
- $HOME
- ${DATABASE_URL}
- echo $PATH
Exemplos que não casam
- $lower
- PATH
- ${1}
Outras expressões do grupo
from ['\"]([^'\"]+)['\"]o caminho de um import#[0-9a-fA-F]{6}\buma cor hexadecimal dentro do textoTODO:?\s*(.*)uma nota TODO num comentário\d+(px|em|rem|%)um número com unidade CSS!\[([^\]]*)\]\(([^)]+)\)uma imagem de Markdown^[-*+]\s+(.+)$um item de lista Markdown--[^\n]*um comentário de linha SQL[A-Za-z0-9_-]{11}um id de vídeo do YouTubeComo 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 variável de ambiente do shell?
\$\{?([A-Z_][A-Z0-9_]*)\}?.
Q. Quais cadeias casam?
Um texto como $HOME casa; um como $lower 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á 1 grupo de captura, então dá para ler a partir de match[1].