# IsRegEx - Função de script e de gráfico

IsRegEx() retorna se o texto especificado é uma expressão regular válida.

Essa função executa operações regex que diferenciam maiúsculas de minúsculas. Como alternativa, você pode usar a variante IsRegExI() para realizar operações de regex sem distinção entre maiúsculas e minúsculas.

Sintaxe:

IsRegEx (expr [, debug])

Tipo de dados de retorno: dual

Argumentos

| Argumento | Descrição |
| --- | --- |
| expr | Expressão de string que contém a expressão regular a ser avaliada. |
| debug | Argumento opcional. Se algum valor for especificado para esse argumento, a expressão retornará uma dica de texto descrevendo como uma expressão regular inválida pode ser corrigida. |

Exemplos de funções

| Exemplo | Resultado |
| --- | --- |
| `IsRegEx('[a-z]')` | Retorna `-1` (verdadeiro). |
| `IsRegEx(']0-1[', 1)` | Este exemplo retorna uma mensagem de erro com uma dica para corrigir a expressão regular inválida `]0-1[`. |
| `IsRegEx('[a-z')` | Retorna `0` (falso). Nenhuma mensagem de erro é mostrada porque o argumento debug não foi especificado. |

## Quando usar

Você pode usar IsRegEx() para testar se as expressões regulares que escreveu são válidas no Qlik Sense. Por exemplo, você pode carregar uma tabela em seu aplicativo com texto de entrada e uma avaliação da validade do texto como regex.

## Exemplo 1 – carregamento da validade da regex no modelo de dados

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/IsRegEx.htm)

#### Script de carregamento e resultados

Visão geral

Abra o editor da carga de dados e adicione o script de carregamento abaixo em uma nova seção.

O script de carregamento contém:

* Um campo, `reg_exp`, contendo strings de entrada que podem ou não ser expressões regulares válidas.

* Dois campos calculados para verificar se cada valor em `reg_exp` é uma expressão regular válida ou não:

  * `validity_no_hint`: exibe `-1` (true) se a regex for válida e 0 (false) se for inválida.

  * `validity_with_hint`: exibe -1 (verdadeiro) se a regex for válida. Se a regex for inválida, uma mensagem de erro gerada automaticamente descreverá os problemas com a entrada, com possíveis dicas para ajudar a corrigi-los.

Script de carregamento

```
[Expression Validity]:
	Load
		*,
		IsRegEx(reg_exp) as validity_no_hint,
		IsRegEx(reg_exp,1) as validity_with_hint
		;
Load
*
Inline
`
reg_exp
[a-z]+
([a-z)(0-9)+
abcdefg|[0-7
\$|¢(0-9)
`;
```

Resultados

Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:

* `
  reg_exp`

* `validity_no_hint`

* `validity_with_hint`

Tabela de resultados

| reg\_exp | validity\_no\_hint | validity\_with\_hint |
| --- | --- | --- |
| ([a-z)(0-9)+ | 0 | -1 |
| [a-z]+ | -1 | Texto da dica (gerado automaticamente) |
| \$\|¢(0-9) | -1 | Texto da dica (gerado automaticamente) |
| abcdefg\|[0-7 | 0 | -1 |

## Exemplo 2 – carregando apenas regex válida no modelo de dados

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/IsRegEx.htm)

#### Script de carregamento e resultados

Visão geral

Abra o editor da carga de dados e adicione o script de carregamento abaixo em uma nova seção.

O script de carregamento contém:

* Um campo, `reg_exp`, contendo strings de entrada que podem ou não ser expressões regulares válidas. Esse campo está contido em uma tabela chamada `Regular Expressions`.

* Uma cláusula where que só carrega registros no modelo de dados quando a entrada é uma expressão regular válida.

Script de carregamento

```
[Regular Expressions]:

Load
*
Inline
`
reg_exp
[a-z]+
([a-z)(0-9)+
abcdefg|[0-7
\$|¢(0-9)
`
WHERE
IsRegEx(reg_exp)=True()
;
```

Resultados

Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esse campo como uma dimensão:

* `
  reg_exp`

Tabela de resultados

| reg\_exp |
| --- |
| [a-z]+ |
| \$\|¢(0-9) |

`[a-z]+` e `\$|¢(0-9)` são expressões regulares válidas, portanto, foram carregadas no modelo de dados. `([a-z)(0-9)+` e `abcdefg|[0-7` não são expressões regulares válidas, portanto, não foram carregadas no modelo de dados.

## Exemplo 3 – expressões de gráfico

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/IsRegEx.htm)

#### Expressões e resultados do gráfico

Visão geral

Neste exemplo, carregamos um conjunto de strings de entrada no modelo de dados e as adicionamos a uma tabela, junto com duas dimensões calculadas que avaliam a validade da regex. As duas dimensões calculadas transmitem as mesmas informações de maneiras diferentes.

Abra o Editor de carregamento de dados e adicione o script de carregamento a seguir a uma nova seção.

O script de carregamento contém um campo, `reg_exp`, contendo strings de entrada que podem ou não ser expressões regulares válidas. Esse campo está contido em uma tabela chamada `Regular Expressions`.

Script de carregamento

```
[Regular Expressions]:

Load
*
Inline
`
reg_exp
[a-z]+
([a-z)(0-9)+
abcdefg|[0-7
\$|¢(0-9)
`;
```

Resultados

Faça o seguinte:

1. Carregue os dados e abra uma pasta. Crie uma nova tabela. Adicione `reg_exp` como uma dimensão.

2. Em seguida, adicione a seguinte dimensão calculada:

   `=IsRegEx(reg_exp)`

   Essa é uma expressão básica de gráfico que mostra `-1` (true) se a entrada for uma expressão regular válida e `0` (false) se não for.

3. Adicione outra dimensão calculada:

   `=if(IsRegEx(reg_exp), 'Valid regex', 'Invalid regex')`

   Essa é uma expressão condicional que oferece mais detalhes sobre a validade da entrada.

Tabela de resultados

| reg\_exp | =IsRegEx(reg\_exp) | =if(IsRegEx(reg\_exp), 'Valid regex', 'Invalid regex') |
| --- | --- | --- |
| ([a-z)(0-9)+ | 0 | Invalid regex |
| [a-z]+ | -1 | Valid regex |
| \$\|¢(0-9) | -1 | Valid regex |
| abcdefg\|[0-7 | 0 | Invalid regex |

## Saiba mais

* [Trabalhando com expressões regulares em scripts de carregamento e expressões de gráfico](https://help.qlik.com/pt-BR/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/regular-expressions-qlik-analytics.htm)