# IsRegEx Skript- och diagramfunktion

IsRegEx() returnerar huruvida den angivna texten är ett giltigt reguljärt uttryck.

Den här funktionen utför regexoperationer som är skiftlägeskänsliga. Alternativt kan du använda varianten IsRegExI() för att utföra skiftlägesokänsliga regexoperationer.

IsRegEx (expr [, debug])

Returnerad datatyp: Dual

Argument

| Argument | Beskrivning |
| --- | --- |
| expr | Stränguttryck som innehåller det reguljära uttryck som ska utvärderas. |
| debug | Valfritt argument. Om något värde anges för detta argument returnerar uttrycket en texthint som beskriver hur ett ogiltigt reguljärt uttryck kan åtgärdas. |

Exempel på funktioner

| Exempel | Resultat |
| --- | --- |
| `IsRegEx('[a-z]')` | Returnerar `-1` (sant). |
| `IsRegEx(']0-1[', 1)` | Detta exempel returnerar ett felmeddelande med en ledtråd för att korrigera det ogiltiga reguljära uttrycket `]0-1[`. |
| `IsRegEx('[a-z')` | Returnerar `0` (falskt). Inget felmeddelande visas eftersom argumentet debug inte har angetts. |

## Användning

Du kan använda IsRegEx() för att testa om de reguljära uttryck du skriver är giltiga i Qlik Sense. Du kan till exempel läsa in en tabell i din applikation med indatatext och en utvärdering av textens giltighet som regex.

## Exempel 1 – laddar giltighet för regex i datamodell

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

#### Laddningsskript och resultat

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* Ett fält, `reg_exp`, som innehåller indatasträngar som kanske eller kanske inte är giltiga reguljära uttryck.

* Två beräknade fält för att kontrollera om respektive värde i `reg_exp` är ett giltigt reguljärt uttryck eller inte:

  * `validity_no_hint`: Visar `-1` (sant) om regex är giltig och 0 (falskt) om den är ogiltig.

  * `validity_with_hint`: Visar -1 (sant) om regex är giltig. Om regexet är ogiltigt visas ett autogenererat felmeddelande som beskriver problem med inmatningen, med möjliga tips för att åtgärda dem.

Laddningsskript

```
[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)
`;
```

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell och lägg till dessa fält som dimensioner:

* `
  reg_exp`

* `validity_no_hint`

* `validity_with_hint`

Resultattabell

| reg\_exp | validity\_no\_hint | validity\_with\_hint |
| --- | --- | --- |
| ([a-z)(0-9)+ | 0 | -1 |
| [a-z]+ | -1 | Tips-text (autogenererad) |
| \$\|¢(0-9) | -1 | Tips-text (autogenererad) |
| abcdefg\|[0-7 | 0 | -1 |

## Exempel 2 – laddar endast giltig regex i datamodell

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

#### Laddningsskript och resultat

Översikt

Öppna dataladdningsredigeraren och lägg till laddningsskriptet nedan i ett nytt delavsnitt.

Laddningsskriptet innehåller:

* Ett fält, `reg_exp`, som innehåller indatasträngar som kanske eller kanske inte är giltiga reguljära uttryck. Detta fält finns i en tabell som heter `Regular Expressions`.

* En where-sats som bara laddar poster i datamodellen när indata är ett giltigt reguljärt uttryck.

Laddningsskript

```
[Regular Expressions]:

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

Resultat

Ladda data och öppna ett ark. Skapa en ny tabell och lägg till det här fältet som en dimension:

* `
  reg_exp`

Resultattabell

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

`[a-z]+` och `\$|¢(0-9)` är giltiga reguljära uttryck, så de har laddats in i datamodellen. `([a-z)(0-9)+` och `abcdefg|[0-7` är inte giltiga reguljära uttryck, så de har inte laddats in i datamodellen.

## Exempel 3 – diagramuttryck

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

#### Diagramuttryck och resultat

Översikt

I det här exemplet läser vi in en uppsättning indatasträngar i datamodellen och lägger till dem i en tabell, tillsammans med två beräknade dimensioner som utvärderar regexens giltighet. De två beräknade dimensionerna förmedlar samma information på olika sätt.

Öppna Skriptredigeraren och lägg till följande laddningsskript till ett nytt delavsnitt.

Laddningsskriptet innehåller ett fält, `reg_exp`, som innehåller indatasträngar som kanske eller kanske inte är giltiga reguljära uttryck. Detta fält finns i en tabell som heter `Regular Expressions`.

Laddningsskript

```
[Regular Expressions]:

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

Resultat

Gör följande:

1. Ladda data och öppna ett ark. Skapa en ny tabell. Lägg till `reg_exp` som en dimension .

2. Lägg nu till följande beräknade dimensioner:

   `=IsRegEx(reg_exp)`

   Detta är ett grundläggande diagramuttryck som visar `-1` (sant) om indata är ett giltigt reguljärt uttryck och `0` (falskt) om det inte är det.

3. Lägg till ytterligare en beräknad dimension:

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

   Detta är ett villkorligt uttryck som ger mer information om giltigheten av indata.

Resultattabell

| 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 |

[Arbeta med reguljära uttryck i laddningsskript och diagramuttryck](https://help.qlik.com/sv-SE/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/regular-expressions-qlik-analytics.htm)