Linguagem de Programação Crystal

Regex

Expressões regulares são representadas pela classe Regex, que geralmente é criada com um literal:

foo_or_bar = /foo|bar/
heeello    = /h(e+)llo/
integer    = /\d+/

Um literal de expressão regular é delimitado por / e usa a sintaxe PCRE.

Pode ser seguido por estes modificadores:

  • i: ignorar maiúsculas e minúsculas (PCRE_CASELESS)
  • m: multi-linhas (PCRE_MULTILINE)
  • x: estendido (PCRE_EXTENDED)

Por exemplo:

r = /foo/imx

Barras precisam ser escapadas:

barra = /\//

É disponibilizada uma sintaxe alternativa:

r = %r(regex com barra: /)