Regular Expressions 101

Save & Share

  • Regex Version: ver. 4
  • Update Regex
    ctrl+⇧+s
  • Save new Regex
    ctrl+s
  • Add to Community Library

Flavor

  • PCRE2 (PHP >=7.3)
  • PCRE (PHP <7.3)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java 8
  • .NET 7.0 (C#)
  • Rust
  • Regex Flavor Guide

Function

  • Match
  • Substitution
  • List
  • Unit Tests

Tools

Sponsors
There are currently no sponsors. Become a sponsor today!
An explanation of your regex will be automatically generated as you type.
Detailed match information will be displayed here automatically.
  • All Tokens
  • Common Tokens
  • General Tokens
  • Anchors
  • Meta Sequences
  • Quantifiers
  • Group Constructs
  • Character Classes
  • Flags/Modifiers
  • Substitution
  • A single character of: a, b or c
    [abc]
  • A character except: a, b or c
    [^abc]
  • A character in the range: a-z
    [a-z]
  • A character not in the range: a-z
    [^a-z]
  • A character in the range: a-z or A-Z
    [a-zA-Z]
  • Any single character
    .
  • Alternate - match either a or b
    a|b
  • Any whitespace character
    \s
  • Any non-whitespace character
    \S
  • Any digit
    \d
  • Any non-digit
    \D
  • Any word character
    \w
  • Any non-word character
    \W
  • Non-capturing group
    (?:...)
  • Capturing group
    (...)
  • Zero or one of a
    a?
  • Zero or more of a
    a*
  • One or more of a
    a+
  • Exactly 3 of a
    a{3}
  • 3 or more of a
    a{3,}
  • Between 3 and 6 of a
    a{3,6}
  • Start of string
    ^
  • End of string
    $
  • A word boundary
    \b
  • Non-word boundary
    \B

Regular Expression

/
/
g

Test String

Code Generator

Generated Code

import java.util.regex.Matcher; import java.util.regex.Pattern; public class Example { public static void main(String[] args) { final String regex = "Cliente:(.*)CPF\\/C\\.N\\.P\\.J\\.:(.*)\\sEndereço:(.*)CEP:(.*)\\s{1,}Tel EBT:\\s{1,}Tel Res:(.*)Tel Outros:(.*)Tel Comercial:(.*)"; final String string = "RETIRAR ANTENA E LNB. \n\n" + "Cliente: \n" + "FULANO DE TAL CPF/C.N.P.J.: 123456789123 \n" + "Endereço: R RITA ALVES PEREIRA , 01 -\n" + "CARAPICUIBA -CARAPICUIBA-SP CEP: 6365000 \n\n" + "Tel EBT: \n\n" + "Tel Res: \n" + "01141874187 Tel Outros: Tel Comercial: 011999999999 \n" + "Tel Celular: Tel Fax: \n" + "Referência (Localização): \n" + "Solicitação: 13/06/2014 23:02 Emissão: 15/06/2014 13:38 Node: CARAP06365 \n\n\n" + "Agendado para: 28/06/2014 INTEGRAL OS Número: 0000000010 \n" + "EQUIPE: PARCEIRO: C111111_S_SP-XXXXXXX \n\n" + "Prepostos: Portabilidade: \n\n" + "Contrato: 00000008 Produto: Qtde. de Pontos: 1 Data de Habilitação: 13/02/2013 \n\n" + "EQUIPAMENTOSNr. Série: Produto Atual: Produto Novo: Mod.Venda: Localização: Tipo/Modelo: Instalação: \n" + "000000000012 PCT COMP NV FACIL FID_2012 COMODATO OUTROS DECODER DIGITAL -COSHIP -N5366S (PenVR) \n" + "000000000012 PCT COMP NV FACIL FID_2012 COMODATO OUTROS SMART CARD -NAGRA 13/02/2013 \n" + "SERVIÇOSEXECUTADOSData: Serviço executado: Equipe: Parceiro: Cód. Baixa: \n" + "13/02/2013 ADESAO -INSTALACAO DE ASSINATURA DIGITAL C111111_S_SP-XXXXXXX EXEC. -Instalação \n" + "SERVIÇOSSOLICITADOSOS: Tipo de OS: Produto: Tipo Equip.: \n" + "0000000010 DESCONEXAO INV SD \n" + "OBS.\n" + "[ AGENDAMENTO AUTOMÁTICO FEITO VIA JOB DE BANCO 15/06/2014 01:07:27 [Agendamento para 28/06/2014 (INTEGRAL) feito por PROD_JD em 15/06/2014 01:07 :27] \n" + "Obs.\n" + "Parceiro \n" + "MATERIAIS UTILIZADOS / RETIRADOS \n" + "CÓDIGO MATERIAIS DTH QTDE. CÓDIGO MATERIAIS HFC QTDE. CÓDIGO MATERIAIS QTDE. \n" + "70075212 Antena Offset de 60 cm 70084526 Conector F selado (outdoor) \n" + "70075213 Antena Offset de 90 cm 70084554 Fita plástica dielétrica \n" + "70084888 Antena UHF LOG PRDC 470-890MHZ 70084567 Fecho para fita plástica dielétrica \n" + "70075215 LNBF Simples 70084553 Gancho span clamp U \n" + "70075217 LNBF Duplo 70084522 Cabo RG-6 tri-shield preto com mensageiro \n" + "70084119 LNBF Banda KU Quádruplo Universal 70084568 Pitão com flange e bucha S10 \n" + "70075208 Kit Fixação 70084579 Bucha para passagem coaxial \n" + "70075209 Kit Instalação 70084527 Emenda F \n" + "70075622 Conector Tipo F Hexagonal 70084523 Cabo RG-6 tri-shield branco sem \n" + "mensageiro \n" + "70084525 Conector Tipo F compressão 70084525 Conector F (indoor) Compressão \n" + "70075417 Diplexer VHF/UHF -SAT \n" + "MOV.DE EQUIPAMENTOS \n" + "Nr. Série Localização Instalado Retirado \n" + "Níveis DTH Níveis HFC \n" + "QS NS MER BER C.Alto C.Baixo \n" + "DEC | | | | | | | | | | | \n" + "SC | | | | | | | | | | | \n" + "DEC | | | | | | | | | | | \n" + "SC | | | | | | | | | | | \n" + "M.Terrestre | | | | | | | | | | | | | | \n" + "EMTA | | | | | | | | | | | | | | \n" + "EMTA | | | | | | | | | | | | | | \n" + "CHAVE SMU | | | | | | | | | | | | | \n" + "CHAVE SMU | | | | | | | | | | | | | \n" + "OBSERVAÇÕESCERTIDÃO DE NASCIMENTO| | | | | | | | | | | | | | \n" + "Executado pela Equipe: Hora de Entrada: Hora de Saída: Cód. Baixa: \n" + "DOCUMENTOS ENTREGUES: ( ) Conta de Telefone ( ) Água/Luz/Gás ( ) Extrato Bancário ( ) Capa carnê IPTU ( ) Fatura Cartão de Crédito \n" + "( ) Instalação Casa / ( ) Instalação Prédio : ( ) Sacada ( ) Cobertura Prédio ( ) Chave SMU \n" + "IMPORTANTE: LEIA ATENTAMENTE ANTES DE ASSINAR \n" + "Ao assinar este documento, declaro estar ciente: \n" + "1) Que o SERVIÇO contratado será prestado com base nos termos e condições do CONTRATO DE PRESTAÇÃO DO SERVIÇO DE TV POR ASSINATURA VIA SATÉLITE, BANDA LARGA E TELEFONIA; 2) De ter recebido cópia do contrato o qual \n" + "li e concordo com os termos e condições nesse mencionado; 3) Do direito previsto no Artigo 49 do Código de Defesa do Consumidor; 4) Que a desconexão do serviço não me isenta da quitação de débitos pendentes relativos aos serviços prestados \n" + "até a data de solicitação nem ao pagamento em virtude de quebra de fidelidade, ficando a Embratel –TV Sat, autorizada nesses casos a cobrar o valor corrigido do benefício utilizado; 5) Que as visitas técnicas serão cobradas conforme condições \n" + "estabelecidas no contrato; 6) Que os equipamentos instalados e cedidos em modelo de comodato estão sob minha responsabilidade, devendo devolve-los no momento de rescisão em condições perfeitas. Caso seja detectado pelos técnicos avarias ou \n" + "adulterações, haverá cobrança a título de reposição dos equipamentos. \n" + "Procedimento Autorizado por Regime Especial -Processo nº 31820-273877/2009 \n" + "Técnico ensinou a usar o sistema: Sim ( ) Não ( ) \n" + "Qualidade dos canais abertos antes da visita: Bom ( ) Ruim ( ) \n" + "Sistema Embratel TV funcionando em perfeitas condições, testados com o cliente/preposto: Sim ( ) Não ( ) \n" + "Houve danos no imóvel ou equipamentos, e este(s) descrito(s) acima: Sim ( ) Não ( ) \n" + "Avaliação do serviço \n" + "técnico realizado: \n" + "(Péssimo) 0 «-» 10 (Ótimo) \n" + "__________________________ \n" + "Indique um amigo \n" + "Nome: ______________________________________ \n" + "Telefone: (______) ____________________________ \n" + "_______________________ ___/___/___ ___________________________ ______________ ___________________________ \n" + "Assinatura da Equipe Técnica Data Nome do Cliente ou Preposto CPF / CNPJ Assinatura do Cliente ou Preposto \n\n" + " \n" + "RETIRAR ANTENA E LNB. \n\n" + "Cliente: OUTRO FULANO DE TAL CPF/C.N.P.J.: 00000000011 \n" + "Endereço: R ANTONIO FL, 01 -VILA DIRCE -CARAPICUIBA-SP CEP: 6343000 \n\n" + "Tel EBT: \n\n" + "Tel Res: 01141464146 Tel Outros: Tel Comercial: 011999999999 \n" + "Tel Celular: Tel Fax: \n" + "Referência (Localização): \n" + "Solicitação: 14/06/2014 07:18 Emissão: 15/06/2014 13:38 Node: CARAP06343 \n\n\n" + "Agendado para: 30/06/2014 INTEGRAL OS Número: 0000000010 \n" + "EQUIPE: PARCEIRO: C111111_S_SP-XXXXXXX \n\n" + "Prepostos: Portabilidade: \n\n" + "Contrato: 00000008 Produto: Qtde. de Pontos: 1 Data de Habilitação: 11/01/2013 \n\n" + "EQUIPAMENTOSNr. Série: Produto Atual: Produto Novo: Mod.Venda: Localização: Tipo/Modelo: Instalação: \n" + "000000000012 PACOTE CANCELAMENTO FID COMODATO SALA DECODER DIGITAL -HUAWEI -DS222 (PenVR) \n" + "000000000012 PACOTE CANCELAMENTO FID COMODATO SALA SMART CARD -NAGRA 20/03/2014 \n" + "SERVIÇOSEXECUTADOSData: Serviço executado: Equipe: Parceiro: Cód. Baixa: \n" + "12/11/2013 MUDANCA DE LOCAL DE PONTO DIGITAL/ANTENA C111111_S_SP-XXXXXXX EXEC.-Refeitas As \n" + "11/01/2013 ADESAO -INSTALACAO DE ASSINATURA DIGITAL C111111_S_SP-XXXXXXX EXEC. -Instalação \n" + "SERVIÇOSSOLICITADOSOS: Tipo de OS: Produto: Tipo Equip.: \n" + "0000000010 DESCONEXAO INV SD \n" + "OBS.\n" + "[ AGENDAMENTO AUTOMÁTICO FEITO VIA JOB DE BANCO 14/06/2014 23:30:31 [Agendamento para 30/06/2014 (INTEGRAL) feito por PROD_JD em 14/06/2014 23:30 :31] \n" + "Obs.\n" + "Parceiro \n" + "MATERIAIS UTILIZADOS / RETIRADOS \n" + "CÓDIGO MATERIAIS DTH QTDE. CÓDIGO MATERIAIS HFC QTDE. CÓDIGO MATERIAIS QTDE. \n" + "70075212 Antena Offset de 60 cm 70084526 Conector F selado (outdoor) \n" + "70075213 Antena Offset de 90 cm 70084554 Fita plástica dielétrica \n" + "70084888 Antena UHF LOG PRDC 470-890MHZ 70084567 Fecho para fita plástica dielétrica \n" + "70075215 LNBF Simples 70084553 Gancho span clamp U \n" + "70075217 LNBF Duplo 70084522 Cabo RG-6 tri-shield preto com mensageiro \n" + "70084119 LNBF Banda KU Quádruplo Universal 70084568 Pitão com flange e bucha S10 \n" + "70075208 Kit Fixação 70084579 Bucha para passagem coaxial \n" + "70075209 Kit Instalação 70084527 Emenda F \n" + "70075622 Conector Tipo F Hexagonal 70084523 Cabo RG-6 tri-shield branco sem \n" + "mensageiro \n" + "70084525 Conector Tipo F compressão 70084525 Conector F (indoor) Compressão \n" + "70075417 Diplexer VHF/UHF -SAT \n" + "MOV.DE EQUIPAMENTOS \n" + "Nr. Série Localização Instalado Retirado \n" + "Níveis DTH Níveis HFC \n" + "QS NS MER BER C.Alto C.Baixo \n" + "DEC | | | | | | | | | | | \n" + "SC | | | | | | | | | | | \n" + "DEC | | | | | | | | | | | \n" + "SC | | | | | | | | | | | \n" + "M.Terrestre | | | | | | | | | | | | | | \n" + "EMTA | | | | | | | | | | | | | | \n" + "EMTA | | | | | | | | | | | | | | \n" + "CHAVE SMU | | | | | | | | | | | | | \n" + "CHAVE SMU | | | | | | | | | | | | | \n" + "OBSERVAÇÕESCERTIDÃO DE NASCIMENTO| | | | | | | | | | | | | | \n" + "Executado pela Equipe: Hora de Entrada: Hora de Saída: Cód. Baixa: \n" + "DOCUMENTOS ENTREGUES: ( ) Conta de Telefone ( ) Água/Luz/Gás ( ) Extrato Bancário ( ) Capa carnê IPTU ( ) Fatura Cartão de Crédito \n" + "( ) Instalação Casa / ( ) Instalação Prédio : ( ) Sacada ( ) Cobertura Prédio ( ) Chave SMU \n" + "IMPORTANTE: LEIA ATENTAMENTE ANTES DE ASSINAR \n" + "Ao assinar este documento, declaro estar ciente: \n" + "1) Que o SERVIÇO contratado será prestado com base nos termos e condições do CONTRATO DE PRESTAÇÃO DO SERVIÇO DE TV POR ASSINATURA VIA SATÉLITE, BANDA LARGA E TELEFONIA; 2) De ter recebido cópia do contrato o qual \n" + "li e concordo com os termos e condições nesse mencionado; 3) Do direito previsto no Artigo 49 do Código de Defesa do Consumidor; 4) Que a desconexão do serviço não me isenta da quitação de débitos pendentes relativos aos serviços prestados \n" + "até a data de solicitação nem ao pagamento em virtude de quebra de fidelidade, ficando a Embratel –TV Sat, autorizada nesses casos a cobrar o valor corrigido do benefício utilizado; 5) Que as visitas técnicas serão cobradas conforme condições \n" + "estabelecidas no contrato; 6) Que os equipamentos instalados e cedidos em modelo de comodato estão sob minha responsabilidade, devendo devolve-los no momento de rescisão em condições perfeitas. Caso seja detectado pelos técnicos avarias ou \n" + "adulterações, haverá cobrança a título de reposição dos equipamentos. \n" + "Procedimento Autorizado por Regime Especial -Processo nº 31820-273877/2009 \n" + "Técnico ensinou a usar o sistema: Sim ( ) Não ( ) \n" + "Qualidade dos canais abertos antes da visita: Bom ( ) Ruim ( ) \n" + "Sistema Embratel TV funcionando em perfeitas condições, testados com o cliente/preposto: Sim ( ) Não ( ) \n" + "Houve danos no imóvel ou equipamentos, e este(s) descrito(s) acima: Sim ( ) Não ( ) \n" + "Avaliação do serviço \n" + "técnico realizado: \n" + "(Péssimo) 0 «-» 10 (Ótimo) \n" + "__________________________ \n" + "Indique um amigo \n" + "Nome: ______________________________________ \n" + "Telefone: (______) ____________________________ \n" + "_______________________ ___/___/___ ___________________________ ______________ ___________________________ \n" + "Assinatura da Equipe Técnica Data Nome do Cliente ou Preposto CPF / CNPJ Assinatura do Cliente ou Preposto \n\n" + " \n" + "RETIRAR ANTENA E LNB. \n\n" + "Cliente: MAIS UM FULANO DE TAL CPF/C.N.P.J.: 00000000011 \n" + "Endereço: R TIBIRICA, 00 -VILA DIRCE -CARAPICUIBA-SP CEP: 6335000 \n\n" + "Tel EBT: \n\n" + "Tel Res: 01141674167 Tel Outros: Tel Comercial: \n" + "Tel Celular: 011999999999 Tel Fax: \n" + "Referência (Localização): \n" + "Solicitação: 14/06/2014 05:50 Emissão: 15/06/2014 13:38 Node: CARAP06335 \n\n\n" + "Agendado para: 30/06/2014 INTEGRAL OS Número: 0000000010 \n" + "EQUIPE: PARCEIRO: C111111_S_SP-XXXXXXX\n\n" + "Prepostos: Portabilidade: \n\n" + "Contrato: 00000008 Produto: Qtde. de Pontos: 2 Data de Habilitação: 26/06/2010 \n\n" + "EQUIPAMENTOSNr. Série: Produto Atual: Produto Novo: Mod.Venda: Localização: Tipo/Modelo: Instalação: \n" + "000000000012 PACOTE COMPLETO ESSENCIAL FIDELIDADE COMODATO OUTROS SMART CARD -NAGRA 26/05/2012 \n" + "000000000012 PACOTE COMPLETO ESSENCIAL FIDELIDADE COMODATO OUTROS DECODER DIGITAL -HUAWEI -DS220 (PenVR) \n" + "000000000012 PACOTE COMPLETO ESSENCIAL FIDELIDADE COMODATO OUTROS DECODER DIGITAL -COSHIP -N5166 (SD) \n" + "000000000012 PACOTE COMPLETO ESSENCIAL FIDELIDADE COMODATO OUTROS SMART CARD -NAGRA 26/06/2010 \n" + "SERVIÇOSEXECUTADOSData: Serviço executado: Equipe: Parceiro: Cód. Baixa: \n" + "26/05/2012 INSTALACAO DE PONTO EXTRA DIGITAL C111111_S_SP-XXXXXXX EXEC. -Instalação \n" + "26/06/2010 ADESAO -INSTALACAO DE ASSINATURA DIGITAL C111111_S_SP-XXXXXXX EXEC. -Instalação \n" + "SERVIÇOSSOLICITADOSOS: Tipo de OS: Produto: Tipo Equip.: \n" + "0000000010 DESCONEXAO INV SD \n" + "OBS.\n" + "[ AGENDAMENTO AUTOMÁTICO FEITO VIA JOB DE BANCO 15/06/2014 02:13:03 [Agendamento para 30/06/2014 (INTEGRAL) feito por PROD_JD em 15/06/2014 02:13 :03] \n" + "Obs.\n" + "Parceiro \n" + "MATERIAIS UTILIZADOS / RETIRADOS \n" + "CÓDIGO MATERIAIS DTH QTDE. CÓDIGO MATERIAIS HFC QTDE. CÓDIGO MATERIAIS QTDE. \n" + "70075212 Antena Offset de 60 cm 70084526 Conector F selado (outdoor) \n" + "70075213 Antena Offset de 90 cm 70084554 Fita plástica dielétrica \n" + "70084888 Antena UHF LOG PRDC 470-890MHZ 70084567 Fecho para fita plástica dielétrica \n" + "70075215 LNBF Simples 70084553 Gancho span clamp U \n" + "70075217 LNBF Duplo 70084522 Cabo RG-6 tri-shield preto com mensageiro \n" + "70084119 LNBF Banda KU Quádruplo Universal 70084568 Pitão com flange e bucha S10 \n" + "70075208 Kit Fixação 70084579 Bucha para passagem coaxial \n" + "70075209 Kit Instalação 70084527 Emenda F \n" + "70075622 Conector Tipo F Hexagonal 70084523 Cabo RG-6 tri-shield branco sem \n" + "mensageiro \n" + "70084525 Conector Tipo F compressão 70084525 Conector F (indoor) Compressão \n" + "70075417 Diplexer VHF/UHF -SAT \n" + "MOV.DE EQUIPAMENTOS \n" + "Nr. Série Localização Instalado Retirado \n" + "Níveis DTH Níveis HFC \n" + "QS NS MER BER C.Alto C.Baixo \n" + "DEC | | | | | | | | | | | \n" + "SC | | | | | | | | | | | \n" + "DEC | | | | | | | | | | | \n" + "SC | | | | | | | | | | | \n" + "M.Terrestre | | | | | | | | | | | | | | \n" + "EMTA | | | | | | | | | | | | | | \n" + "EMTA | | | | | | | | | | | | | | \n" + "CHAVE SMU | | | | | | | | | | | | | \n" + "CHAVE SMU | | | | | | | | | | | | | \n" + "OBSERVAÇÕESCERTIDÃO DE NASCIMENTO| | | | | | | | | | | | | | \n" + "Executado pela Equipe: Hora de Entrada: Hora de Saída: Cód. Baixa: \n" + "DOCUMENTOS ENTREGUES: ( ) Conta de Telefone ( ) Água/Luz/Gás ( ) Extrato Bancário ( ) Capa carnê IPTU ( ) Fatura Cartão de Crédito \n" + "( ) Instalação Casa / ( ) Instalação Prédio : ( ) Sacada ( ) Cobertura Prédio ( ) Chave SMU \n" + "IMPORTANTE: LEIA ATENTAMENTE ANTES DE ASSINAR \n" + "Ao assinar este documento, declaro estar ciente: \n" + "1) Que o SERVIÇO contratado será prestado com base nos termos e condições do CONTRATO DE PRESTAÇÃO DO SERVIÇO DE TV POR ASSINATURA VIA SATÉLITE, BANDA LARGA E TELEFONIA; 2) De ter recebido cópia do contrato o qual \n" + "li e concordo com os termos e condições nesse mencionado; 3) Do direito previsto no Artigo 49 do Código de Defesa do Consumidor; 4) Que a desconexão do serviço não me isenta da quitação de débitos pendentes relativos aos serviços prestados \n" + "até a data de solicitação nem ao pagamento em virtude de quebra de fidelidade, ficando a Embratel –TV Sat, autorizada nesses casos a cobrar o valor corrigido do benefício utilizado; 5) Que as visitas técnicas serão cobradas conforme condições \n" + "estabelecidas no contrato; 6) Que os equipamentos instalados e cedidos em modelo de comodato estão sob minha responsabilidade, devendo devolve-los no momento de rescisão em condições perfeitas. Caso seja detectado pelos técnicos avarias ou \n" + "adulterações, haverá cobrança a título de reposição dos equipamentos. \n" + "Procedimento Autorizado por Regime Especial -Processo nº 31820-273877/2009 \n" + "Técnico ensinou a usar o sistema: Sim ( ) Não ( ) \n" + "Qualidade dos canais abertos antes da visita: Bom ( ) Ruim ( ) \n" + "Sistema Embratel TV funcionando em perfeitas condições, testados com o cliente/preposto: Sim ( ) Não ( ) \n" + "Houve danos no imóvel ou equipamentos, e este(s) descrito(s) acima: Sim ( ) Não ( ) \n" + "Avaliação do serviço \n" + "técnico realizado: \n" + "(Péssimo) 0 «-» 10 (Ótimo) \n" + "__________________________ \n" + "Indique um amigo \n" + "Nome: ______________________________________ \n" + "Telefone: (______) ____________________________ \n" + "_______________________ ___/___/___ ___________________________ ______________ ___________________________ \n" + "Assinatura da Equipe Técnica Data Nome do Cliente ou Preposto CPF / CNPJ Assinatura do Cliente ou Preposto \n\n" + " "; final Pattern pattern = Pattern.compile(regex); final Matcher matcher = pattern.matcher(string); while (matcher.find()) { System.out.println("Full match: " + matcher.group(0)); for (int i = 1; i <= matcher.groupCount(); i++) { System.out.println("Group " + i + ": " + matcher.group(i)); } } } }

Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html