Regular Expressions 101

Save & Share

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

/
/
gm

Test String

Substitution

Processing...

Code Generator

Generated Code

package main import ( "regexp" "fmt" ) func main() { var re = regexp.MustCompile(`(?m)[^\d]*(\d+)\s*?(\d+).*`) var str = `Tipo 1 3 3 X CNPJ do declarante 4 17 14 CNPJ Ano-calendário 18 21 4 ANO Sequencial da Locação 22 26 5 N CPF/CNPJ do Locador 27 40 14 CPF/CNPJ Nome/Nome Empresarial do Locador 41 100 60 X CPF/CNPJ do Locatário 101 114 14 CPF/CNPJ2 Nome/Nome Empresarial do Locatário 115 174 60 X Número do Contrato 175 180 6 X Data do Contrato 181 188 8 DATA Valor do Aluguel no mês de Janeiro 189 202 14 R$ Valor da Comissão no mês de Janeiro 203 216 14 R$ Valor do Imposto no mês de Janeiro 217 230 14 R$ Valor do Aluguel no mês de Fevereiro 231 244 14 R$ Valor da Comissão no mês de Fevereiro 245 258 14 R$ Valor do Imposto no mês de Fevereiro 259 272 14 R$ Valor do Aluguel no mês de Março 273 286 14 R$ Valor da Comissão no mês de Março 287 300 14 R$ Valor do Imposto no mês de Março 301 314 14 R$ Valor do Aluguel no mês de Abril 315 328 14 R$ Valor da Comissão no mês de Abril 329 342 14 R$ Valor do Imposto no mês de Abril 343 356 14 R$ Valor do Aluguel no mês de Maio 357 370 14 R$ Valor da Comissão no mês de Maio 371 384 14 R$ Valor do Imposto no mês de Maio 385 398 14 R$ Valor do Aluguel no mês de Junho 399 412 14 R$ Valor da Comissão no mês de Junho 413 426 14 R$ Valor do Imposto no mês de Junho 427 440 14 R$ Valor do Aluguel no mês de Julho 441 454 14 R$ Valor da Comissão no mês de Julho 455 468 14 R$ Valor do Imposto no mês de Julho 469 482 14 R$ Valor do Aluguel no mês de Agosto 483 496 14 R$ Valor da Comissão no mês de Agosto 497 510 14 R$ Valor do Imposto no mês de Agosto 511 524 14 R$ Valor do Aluguel no mês de Setembro 525 538 14 R$ Valor da Comissão no mês de Setembro 539 552 14 R$ Valor do Imposto no mês de Setembro 553 566 14 R$ Valor do Aluguel no mês de Outubro 567 580 14 R$ Valor da Comissão no mês de Outubro 581 594 14 R$ Valor do Imposto no mês de Outubro 595 608 14 R$ Valor do Aluguel no mês de Novembro 609 622 14 R$ Valor da Comissão no mês de Novembro 623 636 14 R$ Valor do Imposto no mês de Novembro 637 650 14 R$ Valor do Aluguel no mês de Dezembro 651 664 14 R$ Valor da Comissão no mês de Dezembro 665 678 14 R$ Valor do Imposto no mês de Dezembro 679 692 14 R$ Tipo do Imóvel 693 693 1 X Endereço do Imóvel 694 753 60 X CEP 754 761 8 N Código do Município do Imóvel 762 765 4 N Reservado 766 785 20 Branco(s) UF 786 787 2 X Reservado 788 797 10 Branco(s) Delimitador de Registro 798 799 2 EOL ` var substitution = "addInRegistro(\1, \2, registro.getTipo());\n" fmt.Println(re.ReplaceAllString(str, substitution)) }

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 Golang, please visit: https://golang.org/pkg/regexp/