Conversor de IUPAC para Regex
Transforme um motivo de nucleótidos degenerado escrito com códigos de ambiguidade IUPAC numa expressão regular. Cole o resultado em qualquer ferramenta compatível com regex para pesquisar uma sequência de ADN pelo motivo.
Introduza um motivo de nucleótidos IUPAC para obter a sua regex.
Como funciona
Os códigos de ambiguidade IUPAC permitem que uma única letra represente várias bases possíveis: N é qualquer base, R é A ou G, Y é C ou T, W é A ou T, S é G ou C, e assim por diante. Para pesquisar uma sequência por um motivo degenerado, cada código é expandido numa classe de caracteres de expressão regular — por exemplo N torna-se [ACGT] e R torna-se [AG] — enquanto as bases não ambíguas permanecem inalteradas.
Introduza um motivo e o conversor constrói a expressão regular equivalente. Cole-a numa linguagem de programação, num editor de texto, ou na pesquisa por regex de um navegador de genoma para encontrar todas as ocorrências do motivo, incluindo todas as possibilidades ambíguas.
Exemplos
- GGNCC → GG[ACGT]CC (corresponde a GGACC, GGCCC, GGGCC, GGTCC).
- GAATTC → GAATTC (o local de restrição EcoRI, sem ambiguidade).
- WS → [AT][GC].
Perguntas frequentes
- O que são os códigos de ambiguidade IUPAC?
- São códigos de uma letra que representam um conjunto de nucleótidos, como R para purinas (A/G), Y para pirimidinas (C/T) e N para qualquer base. São usados para descrever primers e motivos degenerados.
- Como é construída a regex?
- Cada código é substituído por uma classe de caracteres com as bases que representa — N torna-se [ACGT], R torna-se [AG] — e as bases simples são deixadas inalteradas, produzindo um padrão que corresponde a todas as sequências possíveis do motivo.
- Onde posso usar a regex?
- Em qualquer sítio onde as expressões regulares sejam suportadas: uma linguagem de programação, a pesquisa de um editor de código, ferramentas de linha de comandos como o grep, ou uma caixa de pesquisa de sequências que aceite regex.
- É sensível a maiúsculas/minúsculas?
- O conversor converte o motivo para maiúsculas, pelo que o padrão resultante corresponde a sequências em maiúsculas. Adicione uma flag de insensibilidade a maiúsculas/minúsculas no seu motor de regex se também precisar de corresponder a bases em minúsculas.