uma hashtag
Casa com uma hashtag. Encontra em qualquer parte do texto. Tem 1 grupo de captura.
Padrão
/(?:^|\s)#([a-z0-9_]+)/i- Alcance
- em qualquer parte do texto
- Grupos de captura
- 1
- Flags
- i · ignorar maiúsculas
- O que captura no primeiro exemplo
- #cats
Experimente
Digite qualquer texto e as partes capturadas serão marcadas. Tudo roda no seu navegador e nada é enviado.
#cats
love #cats
2 correspondências
Exemplos que casam
- #cats
- love #cats
Exemplos que não casam
- a#cats
- #
Outras expressões do grupo
"[^"\\]*(?:\\.[^"\\]*)*"texto entre aspas duplas'[^'\\]*(?:\\.[^'\\]*)*'texto entre aspas simples\[([^\]]+)\]\(([^)]+)\)um link Markdown^#{1,6}\s+.+$uma linha de título Markdown(?:^|\s)@([a-z0-9_]{2,})uma menção com arroba[?&]([^=&]+)=([^&]*)um parâmetro de consulta de uma URLhttps?://[^\s<>"]+uma URL dentro de um texto comum^https?://([^/:?#]+)só o domínio de uma URLComo 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 hashtag?
(?:^|\s)#([a-z0-9_]+), com a flag i.
Q. Quais cadeias casam?
Um texto como #cats casa; um como a#cats 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].