# match Script- en diagramfunctie

Met de functie match vergelijkt u de eerste parameter met alle volgende parameters en krijgt u de numerieke locatie van de overeenkomende uitdrukkingen als resultaat. De vergelijking is hoofdlettergevoelig.

Syntaxis:

match( str, expr1 [ , expr2,...exprN ])

Retourgegevenstypen: geheel getal

TipAls u een vergelijking wilt gebruiken waarbij geen onderscheid wordt gemaakt tussen hoofdletters en kleine letters, gebruikt u de functie mixmatch. Als u een vergelijking wilt gebruiken met jokertekens en waarbij geen onderscheid wordt gemaakt tussen hoofdletters en kleine letters, gebruikt u de functie wildmatch.

Argumenten

| Argument | Beschrijving |
| --- | --- |
| str | De tekenreeks die moet worden geëvalueerd. |
| expr1 | De eerste uitdrukking voor controle op een geldige getalsnotatie. |
| expr2 | De tweede uitdrukking voor controle op een geldige getalsnotatie. |
| expr3 | De derde uitdrukking voor controle op een geldige getalsnotatie. |

Voorbeeld: diagramuitdrukkingen

| Voorbeeld | Resultaat |
| --- | --- |
| `match( ColorCode,'Blue','Black' )` | Deze uitdrukking retourneert de index van de overeenkomst met het veld `ColorCode`. Als de waarde van `ColorCode` is `Blue`, dan wordt `1` geretourneerd. Als de waarde van `ColorCode` is `Black`, dan wordt `2` geretourneerd. Als geen waarde wordt gevonden, wordt `0` geretourneerd. |
| `match( Region, 'North', 'East' )` | Deze uitdrukking retourneert de index van de overeenkomst met het veld `Region`. Als de waarde van `Region` is `North`, dan wordt `1` geretourneerd. Als de waarde van `Region` is `East`, dan wordt `2` geretourneerd. Als geen waarde wordt gevonden, wordt `0` geretourneerd. |

In sommige voorbeelden in dit onderwerp worden inline loads gebruikt. Ga voor meer informatie naar [Inline-ladingen gebruiken om gegevens te laden](https://help.qlik.com/nl-NL/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm).

## Voorbeeld - Producten categoriseren met match

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

#### Diagramuitdrukking

Overzicht

Een gegevensverzameling bevat productgegevens. U wilt producten identificeren en categoriseren die consumeerbaar zijn.

Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuwe sectie.

Het load-script bevat:

* Een gegevensverzameling die wordt geladen in een tabel met de naam `Example`.

* De volgende velden in de gegevenstabel:

  * `ProductID`

  * `ProductName`

  * `ProductCategory`

Load-script

```
Example:
LOAD * INLINE [
ProductID, ProductName, ProductCategory
1, "Laptop", "Electronics"
2, "Banana", "Fruits"
3, "Shampoo", "Toiletries"
4, "TV", "Electronics"
5, "Apple", "Fruits"
];
```

Resultaten

Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:

* `ProductID`

* `ProductName`

* `ProductCategory`

Maak de volgende metingen:

* `=match(ProductCategory,'Toiletries', 'Fruits')`, om de indexatie te retourneren waarbij `ProductCategory` de waarde `Toiletries` of `Fruits` heeft.

* `=If(match(ProductCategory, 'Toiletries', 'Fruits'), 'Consumable', 'Other')`, om de indexatie te retourneren waarbij `ProductCategory` de waarde `Toiletries` of `Fruits` heeft. Als een van beide wordt gevonden, dan wordt `Consumable` geretourneerd. Anders wordt `Other` geretourneerd.

Resultatentabel

| ProductID | ProductName | ProductCategory | match(ProductCategory,'Toiletries', 'Fruits') | If(match(ProductCategory, 'Toiletries', 'Fruits'), 'Consumable', 'Other') |
| --- | --- | --- | --- | --- |
| 1 | Laptop | Electronics | 0 | Other |
| 2 | Banana | Fruits | 2 | Consumable |
| 3 | Shampoo | Toiletries | 1 | Consumable |
| 4 | TV | Electronics | 0 | Other |
| 5 | Apple | Fruits | 2 | Consumable |

De functie `match` retourneert de indexatie van de zoekreeks in de eerste meting. In de tweede meting wordt dit resultaat vervolgens gebruikt in een `If` functie om producten te categoriseren als `Consumable` of `Other`.

## Voorbeeld - Klantgegevens evalueren en classificeren met behulp van match

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

#### Diagramuitdrukking

Overzicht

Een gegevensverzameling bevat klantgegevens. U wilt de klanten identificeren en categoriseren waarvan de regio en industriecategorie aan uw classificatievereisten voldoen.

Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuwe sectie.

Het load-script bevat:

* Een gegevensverzameling die wordt geladen in een tabel met de naam `Example`.

* De volgende velden in de gegevenstabel:

  * `ClientID`

  * `ClientName`

  * `Region`

  * `Industry`

Load-script

```
Example:
LOAD * INLINE [
ClientID, ClientName, Region, Industry
1, "Acme Corp", "North", "Manufacturing"
2, "Beta Ltd", "East", "Technology"
3, "Gamma Inc", "West", "Retail"
4, "Delta LLC", "North", "Technology"
5, "Epsilon GmbH", "South", "Healthcare"
];
```

Resultaten

Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:

* `ClientID`

* `ClientName`

* `Region`

* `Industry`

Maak de volgende meting:

`=IF(match(Region, 'North', 'East') AND match(Industry, 'Technology', 'Manufacturing'), 'Target Segment', 'Secondary Segment')`, om de indexatie van de zoekreeks te retourneren. Als deze wordt gevonden, dan wordt `Target Segment` geretourneerd. Als deze niet wordt gevonden, dan wordt `Secondary Segment` geretourneerd.

Resultatentabel

| ClientID | ClientName | Region | Industry | IF(match(Region, 'North', 'East') AND match(Industry, 'Technology', 'Manufacturing'), 'Target Segment', 'Secondary Segment') |
| --- | --- | --- | --- | --- |
| 1 | Acme Corp | North | Manufacturing | Target Segment |
| 2 | Beta Ltd | East | Technology | Target Segment |
| 3 | Gamma Inc | West | Retail | Secondary Segment |
| 4 | Delta LLC | North | Technology | Target Segment |
| 5 | Epsilon GmbH | South | Healthcare | Secondary Segment |

De functie `match` zoekt naar tekst en stuurt een indexatie terug die vervolgens kan worden gebruikt om aanvullende analyses en gegevensclassificatie uit te voeren. Bijvoorbeeld, `Acme Corp` wordt geclassificeerd als een `Target Segment` omdat het voldoet aan de zoekvereisten van de `match` functie voor zowel het veld `Region` als `Industry`.

## Voorbeeld - Load-script met gebruik van match

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

#### Load-script

Overzicht

U kunt match gebruiken om een gegevens-subset te laden. U kunt bijvoorbeeld een numerieke waarde als resultaat krijgen voor een uitdrukking in de functie. Vervolgens kunt u de gegevens beperken die zijn geladen op basis van de numerieke waarde. De functie Match retourneert 0 als er geen overeenkomst is. Alle uitdrukkingen zonder overeenkomst retourneren in dit voorbeeld daarom 0 en worden uitgesloten van de gegevens die zijn geladen door de `WHERE`-instructie.

Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuwe sectie.

Het load-script bevat:

* Een gegevensverzameling die wordt geladen in twee tabellen met de naam:

  * `Transactions`: bevat transactievelden

  * `Transaction_Buckets`: maakt twee nieuwe velden, `Customer` en `Color Code Blue and Black`. De `where`-instructie laadt de resultaten van de functie `match`.

Load-script

```
Transactions:
Load * Inline [
transaction_id, transaction_date, transaction_amount, transaction_quantity, customer_id, size, color_code
3750, 20180830, 23.56, 2, 2038593, L, Red
3751, 20180907, 556.31, 6, 203521, m, orange
3752, 20180916, 5.75, 1, 5646471, S, blue
3753, 20180922, 125.00, 7, 3036491, l, Black
3754, 20180922, 484.21, 13, 049681, xs, Red
3756, 20180922, 59.18, 2, 2038593, M, Blue
3757, 20180923, 177.42, 21, 203521, XL, Black
];
 
/*
Create new table called Transaction_Buckets
Create new fields called Customer, and Color code Blue and Black
Load Transactions table.
Match returns 1 for 'Blue', 2 for 'Black'. 
Does not return a value for 'blue' because match is case sensitive.
Only values that returned numeric value greater than 0 
are loaded by WHERE statement into Transactions_Buckets table.
*/
 
Transaction_Buckets:
Load
 customer_id,
 customer_id as [Customer], 
 color_code as [Color Code Blue and Black]
Resident Transactions
Where match(color_code,'Blue','Black') > 0; 
```

Resultaten

Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg deze velden toe als dimensies:

* `[Color Code Blue and Black]`

* `Customer`

Resultatentabel met de uitvoer van het gebruik van de functie matchmatch in het load-script.

| Color Code Blue and Black | Customer |
| --- | --- |
| Black | 203521 |
| Black | 3036491 |
| Blue | 2038593 |

## Voorbeeld - Diagramuitdrukking met gebruik van match

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

#### Diagramuitdrukking

Overzicht

Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuwe sectie.

Het load-script bevat:

* Een gegevensverzameling die wordt geladen in een tabel met de naam Example.

* De volgende velden in de gegevenstabel:

  * Cities

  * Count

Load-script

```
Example:
Load * inline [
Cities, Count
Toronto, 123
Toronto, 234
Toronto, 231
Boston, 32
Boston, 23
Boston, 1341
Beijing, 234
Beijing, 45
Beijing, 235
Stockholm, 938
Stockholm, 39
Stockholm, 189
zurich, 2342
zurich, 9033
zurich, 0039];
```

Resultaten

Laad de gegevens en open een werkblad. Maak een nieuwe tabel en voeg dit veld toe als dimensie:

* Cities

Maak de volgende metingen:

* =match( Cities,'Toronto','Boston','Beijing','Zurich'), om de indexatie van de zoekreeks te retourneren.

* =match( Cities,'Toronto','Boston','Beijing','Stockholm','zurich'), om de indexatie van de zoekreeks te retourneren.

* =Cities & ' - ' & match ( Cities, 'Toronto','Boston', 'Beijing','Stockholm','zurich'), om het veld Cities en de indexatie van de zoekreeks te retourneren.

De eerste meting in de onderstaande tabel retourneert 0 voor Stockholm, aangezien Stockholm niet is opgenomen in de lijst met uitdrukkingen in de functie match. Het retourneert ook 0 voor Zurich omdat de vergelijking match hoofdlettergevoelig is.

Resultatentabel

| Cities | match( Cities,'Toronto','Boston','Beijing','Zurich') | match( Cities,'Toronto','Boston','Beijing','Stockholm','zurich') | Cities & ' - ' & match ( Cities, 'Toronto','Boston', 'Beijing','Stockholm','zurich') |
| --- | --- | --- | --- |
| Beijing | 3 | 3 | Beijing - 3 |
| Boston | 2 | 2 | Boston - 2 |
| Stockholm | 0 | 4 | Stockholm - 4 |
| Toronto | 1 | 1 | Toronto - 1 |
| zurich | 0 | 5 | zurich - 5 |

## Voorbeeld - Aangepaste sorteeruitdrukking met gebruik van match

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

#### Diagramuitdrukking

Overzicht

U kunt match gebruiken om een uitdrukking op aangepaste wijze te sorteren. Dit voorbeeld gebruikt dezelfde gegevensverzameling als het vorige voorbeeld.

Kolommen worden standaard numeriek of alfabetisch gesorteerd, afhankelijk van de gegevens.

Resultatentabel toont de standaardsorteervolgorde

| Cities |
| --- |
| Beijing |
| Boston |
| Stockholm |
| Toronto |
| zurich |

Doe het volgende om de sorteervolgorde te wijzigen:

1. Open de sectie Sorteren in het eigenschappenvenster.

2. Schakel automatisch sorteren uit voor de kolom die u aangepast wilt sorteren.

3. Schakel de selectievakjes Numeriek sorteren en Alfabetisch sorteren uit.

4. Selecteer Sorteren op uitdrukking en voer een uitdrukking in die hierop lijkt:

   =match( Cities, 'Toronto','Boston','Beijing','Stockholm','zurich')

   De sorteervolgorde van de kolom Cities wordt gewijzigd.

Resultatentabel toont de sorteervolgorde met de functie matchmatch.

| Cities |
| --- |
| Toronto |
| Boston |
| Beijing |
| Stockholm |
| zurich |

## Meer informatie

* [mixmatch Script- en diagramfunctie](https://help.qlik.com/nl-NL/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/mixmatch.htm)
* [wildmatch Script- en diagramfunctie](https://help.qlik.com/nl-NL/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/wildmatch.htm)