# KeepChar - Script- en diagramfunctie

KeepChar() retourneert een tekenreeks die bestaat uit tekens van de eerste rekenreeks die overeenkomen met de tekens in de tweede tekensreeks. Deze functie is hoofdlettergevoelig.

Syntaxis:

KeepChar(text, keep\_chars)

Retourgegevenstypen: tekenreeks

Argumenten

| Argument | Beschrijving |
| --- | --- |
| text | De oorspronkelijke tekenreeks. |
| keep\_chars | Een tekenreeks die de tekens in text bevat die moeten worden bewaard. Dit argument is hoofdlettergevoelig. |

Voorbeeld: diagramuitdrukkingen

| Voorbeeld | Resultaat |
| --- | --- |
| `KeepChar ( 'a1b2c3','123' )` | Retourneert `123` |
| `KeepChar  ( 'a1b2c3','1234' )` | Retourneert `123` |
| `KeepChar  ( 'a1b22c3','1234' )` | Retourneert `1223` |
| `KeepChar( 'a1b2c3','312' )` | Retourneert `123` |

## Voorbeeld - Basisprincipes voor KeepChar

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/KeepChar.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:

  * `InputText` die de originele teksttekenreeks bevat die verwerkt moet worden.

  * `CharsToKeep` die de lijst met tekens bevat die na verwerking uit de oorspronkelijke teksttekenreeks moeten worden behouden.

Load-script

```
Example:
Load * inline [
InputText, CharsToKeep
'a1b2c3', '123'
'a^b^c', 'abc'
'A^b^c', 'abc'
];
```

Resultaten

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

* `InputText`
* `CharsToKeep`

Maak een nieuwe tabel en voeg de volgende berekende dimensie toe:

* `=KeepChar(InputText, CharsToKeep)`, om de tekens in `InputText` te berekenen die overeenkomen met de tekens in `CharsToKeep`.

Resultatentabel

| InputText | CharsToKeep | KeepChar(InputText, CharsToKeep) |
| --- | --- | --- |
| a1b2c3 | 123 | 123 |
| a^b^c | abc | abc |
| A^b^c | abc | bc |

De kolom `KeepChar(InputText, CharsToKeep)` retourneert alleen de tekens in `InputText` die exact overeenkomen met de tekens in `CharsToKeep`. De derde rij retourneert bijvoorbeeld `bc`, omdat dat de enige tekens in `InputText` zijn die overeenkomen met de tekens in `CharsToKeep`. Het hoofdletterteken `A` wordt niet geretourneerd omdat de items in `CharsToKeep` alleen kleine letters zijn.

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

#### Load-script

De volgende code laat zien hoe u de functie in een load-script kunt gebruiken.

```
Example:
Load
*,
keepchar(String1, String2) as KeepChar;
Load * inline [
String1, String2
'a1b2c3', '123'
];
```

Resultatentabel

| String1 | String2 | KeepChar |
| --- | --- | --- |
| a1b2c3 | 123 | 123 |

## Voorbeeld - Scenario met KeepChar om ongestructureerde tekst te parseren

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

#### Diagramuitdrukking

Overzicht

Dit voorbeeld gebruikt de functie om ongestructureerde tekst (letters, cijfers en symbooltekens) te ontleden en een gestructureerde uitvoer te leveren die alleen numerieke tekens behoudt.

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:

  * `InputText` die de originele teksttekenreeks bevat die verwerkt moet worden.

  * `CharsToKeep` die de lijst met tekens bevat die na verwerking uit de oorspronkelijke teksttekenreeks moeten worden behouden.

Load-script

```
Example:
Load * inline [
InputText, InputCategory, CharsToKeep
'The numeric code for input processing is 123-456|789.', 'Code', '0123456789'
'Delivery of batch number: 333*456789.', 'Batch', '0123456789'
'Find the goods received in bay 16a', 'Bay', '0123456789'
];
```

Resultaten

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

* `InputText`
* `CharsToKeep`

Maak een nieuwe tabel en voeg de volgende berekende dimensie toe:

* `=KeepChar(InputText, CharsToKeep)`, om de tekens in `InputText` te berekenen die overeenkomen met de tekens in `CharsToKeep`.

Resultatentabel

| InputText | CharsToKeep | KeepChar(InputText, CharsToKeep) |
| --- | --- | --- |
| Delivery of batch number: 333\*456789 | 0123456789 | 333456789 |
| Find the goods received in bay 16a | 0123456789 | 16 |
| The numeric code for input processing is 123-456\|789 | 0123456789 | 123456789 |

Vergelijk de uitvoer van de functie `KeepChar` met de oorspronkelijke `InputText` tekenreekswaarden die in het script geladen zijn. De functie `KeepChar` heeft met succes alle niet-numerieke tekens uit de invoertekst verwijderd.

## Meer informatie

* [PurgeChar - Script- en diagramfunctie](https://help.qlik.com/nl-NL/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/PurgeChar.htm)