Articles of regex

Caracteres não numéricos da tira do MySQL para comparar

Eu estou olhando para encontrar registros em uma tabela que correspondem a um número específico que o usuário entra. Assim, o usuário pode inserir 12345, mas isso pode ser 123zz4-5 no database. Eu imagino que algo assim funcionaria, se as funções PHP funcionassem no MySQL. SELECT * FROM foo WHERE preg_replace(“/[^0-9]/”,””,bar) = ‘12345’ Qual é […]

Expressão regular para pular caracteres no grupo de captura

É possível pular alguns caracteres em um grupo de captura em expressões regulares? Eu estou usando regexes .NET, mas isso não importa. Basicamente, o que estou procurando é: [texto random] AB-123 [texto random] e eu preciso capturar ‘AB123’, sem o hífen. Eu sei que AB tem 2 ou 3 caracteres maiúsculos e 123 tem 2 […]

Diferença entre LIKE e ~ no Postgres

Fui instruído “a não se incomodar com o LIKE ” e use ~ . O que há de errado com o LIKE e como é diferente? ~ Tem um nome neste contexto ou as pessoas dizem “use o operador til”?

Como extrair a enésima palavra e contar as ocorrências da palavra em uma string MySQL?

Eu gostaria de ter uma consulta mysql como esta: select word, count(*) from table group by word; Todos os exemplos de regex no mysql são usados ​​para consultar se o texto corresponde à expressão, mas não para extrair texto de uma expressão. Existe tal syntax?

Sobreposição de correspondências no Regex

Eu não consigo encontrar uma resposta para este problema, e eu estou querendo saber se existe um. Exemplo simplificado: Considere uma string “nnnn”, onde quero encontrar todas as correspondências de “nn” – mas também aquelas que se sobrepõem umas às outras. Portanto, o regex forneceria as seguintes 3 correspondências: nn nn n nn n nn […]

Como usar condicionais ao replace no Notepad ++ via regex

Considere o seguinte regex: ([a-zA-Z])([a-zA-Z]?)/([a-zA-Z])([a-zA-Z]?) Se o texto for: a/b os grupos de captura serão: /1 ‘a’ /2 ” /3 ‘b’ /4 ” E se o texto for: aa/b os grupos de captura serão: /1 ‘a’ /2 ‘a’ /3 ‘b’ /4 ” Suponha que eu queira encontrar e replace essa string no Notepad ++ de […]

String.replaceAll (regex) faz a mesma substituição duas vezes

Alguém pode me dizer o porquê System.out.println(“test”.replaceAll(“.*”, “a”)); Resulta em aa Observe que o seguinte tem o mesmo resultado: System.out.println(“test”.replaceAll(“.*$”, “a”)); Eu testei isso no java 6 e 7 e ambos parecem se comportar da mesma maneira. Estou faltando alguma coisa ou isso é um bug no mecanismo regex java?

Regex look-behind sem comprimento máximo óbvio em Java

Eu sempre achei que uma afirmação por trás da API regex do Java (e muitas outras linguagens) deve ter um tamanho óbvio. Portanto, os quantificadores STAR e PLUS não são permitidos em look-behinds . O excelente recurso on-line regular-expressions.info parece confirmar (algumas das) minhas suposições: “[…] Java leva as coisas um passo adiante, permitindo a […]

Como faço para usar expressões regulares em scripts bash?

Quero verificar se uma variável tem um ano válido usando uma expressão regular. Lendo o manual de bash eu entendo que eu poderia usar o operador = ~ Olhando para o exemplo abaixo, eu esperaria ver “não OK”, mas vejo “OK”. O que estou fazendo de errado? i=”test” if [ $i=~”200[78]” ] then echo “OK” […]

Como remover caracteres especiais de uma string?

Eu quero remover caracteres especiais como: – + ^ . : , de uma String usando Java.