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.
Syntax:
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 app med indatatext och en utvärdering av textens giltighet som regex.
Exempel 1 – laddar giltighet för regex i datamodell
Översikt
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
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.
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
Översikt
Öppn skriptredigeraren och lägg till laddningsskriptet nedan till en ny flik.
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.
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
Ö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.
Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!