# PurgeChar スクリプトおよびチャート関数

PurgeChar() は、2 番目の引数 ('remove\_chars') に表示されるものを除き、入力文字列 ('text') に含まれる文字で構成される文字列を返します。

構文:

PurgeChar(text, remove\_chars)

戻り値データ型： 文字列

引数

| 引数 | 説明 |
| --- | --- |
| text | 元の文字列。 |
| remove\_chars | text で削除される文字を含む文字列。 |

例: チャートの数式

| 例 | 結果 |
| --- | --- |
| `PurgeChar( 'a1b2c3','123' )` | `abc` を返します |
| `PurgeChar( 'a1b2c3','1234' )` | `abc` を返します |
| `PurgeChar( 'a1b22c3','1234' )` | `abc` を返します |
| `PurgeChar( 'a1b2c3','312' )` | `abc` を返します |
| `PurgeChar ( 'a1b2c3','Abc' )` | `a123` を返します |

## 例 - PurgeChar の基本

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

#### チャートの数式

概要

データ ロード エディターを開き、以下のロード スクリプトを新しいセクションに追加します。

ロード スクリプトには次が含まれています:

* 「`Example`」というデータ テーブルにロードされるデータセット。

* データ テーブル内の次の項目:

  * `InputText`

  * `CharsToPurge`

ロード スクリプト

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

結果

データをロードしてシートを開きます。新しいテーブルを作成し、これらの項目を軸として追加します:

* ` InputText
                                   `

* `CharsToPurge`

次の計算軸を作成します。

* `=PurgeChar(InputText,CharsToPurge)`、`CharsToPurge` の文字と一致する`InputText` の文字を計算し、一致しない文字のみを返します。

Results table

| InputText | CharsToPurge | PurgeChar(InputText,CharsToPurge) |
| --- | --- | --- |
| A^b^c | A^ | bc |
| a^b^c | ^ | abc |
| a1b2c3 | 123 | abc |

`PurgeChar` 関数の出力は、`InputText` の文字のうち、`CharsToPurge` の文字と一致しないものだけを返します。例えば、最初の行は `bc` を返し、他の文字を削除します。

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

#### ロード スクリプト

次のコードは、ロード スクリプトで関数を使用する方法を示しています。

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

結果テーブル

| String1 | String2 | PurgeChar |
| --- | --- | --- |
| a1b2c3 | 123 | abc |

## 例 - PurgeChar のシナリオ

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

#### チャートの数式

概要

データセットには顧客の名前と電話番号が含まれています。この例では、電話番号文字列を解析して、数字のみを残し、括弧、ダッシュ、ピリオド、プラス記号、スペースなど、その他の文字をすべて破棄します。

データ ロード エディターを開き、以下のロード スクリプトを新しいセクションに追加します。

ロード スクリプトには次が含まれています:

* 「`Example`」というデータ テーブルにロードされるデータセット。

* データ テーブル内の次の項目:

  * `CustomerName`

  * `PhoneNumber`

ロード スクリプト

```
Example:
Load * inline [
CustomerName, PhoneNumber
John Doe, (123) 456-7890
Jane Smith, 123-456-7890
Bob Johnson, 123.456.7890
Alice Brown, +1 (123) 456 7890
];
```

結果

データをロードしてシートを開きます。新しいテーブルを作成し、これらの項目を軸として追加します:

* ` CustomerName
                                   `

* `PhoneNumber`

次の計算軸を作成します。

* `=PurgeChar(PhoneNumber, '()- .+ ')`、`PhoneNumber` 項目から数字以外の文字を抽出し、数字のみを返します。

Results table

| CustomerName | PhoneNumber | PurgeChar(PhoneNumber,'()-.+ ') |
| --- | --- | --- |
| Alice Brown | +1 (123) 456 7890 | 11234567890 |
| Bob Johnson | 123.456.7890 | 1234567890 |
| Jane Smith | 123-456-7890 | 1234567890 |
| John Doe | (123) 456-7890 | 1234567890 |

`PurgeChar` 関数により、`PhoneNumber` 文字列から数字以外の文字がすべて正常に削除され、数字のみを返します。

## 詳細を見る

* [KeepChar スクリプトおよびチャート関数](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/KeepChar.htm)