# Replace funkcja skryptu i funkcja wykresu

Funkcja Replace() zwraca ciąg znaków po zastąpieniu wszystkich wystąpień danego fragmentu tekstu w ciągu wejściowym innym fragmentem tekstu. Ta funkcja jest nierekurencyjna i działa od lewej do prawej.

Składnia:

Replace(text, from\_str, to\_str)

Typ zwracanych danych: ciąg znaków

Argumenty

| Argument | Opis |
| --- | --- |
| text | Pierwotny ciąg znaków. |
| from\_str | Ciąg znaków, który może występować co najmniej raz w ciągu znaków text. |
| to\_str | Ciąg znaków, który zastąpi wszystkie wystąpienia from\_str w tekście text ciągu znaków. |

Przykład: wyrażenie wykresu

| Przykład | Wynik |
| --- | --- |
| `Replace( 'abccde','cc','xyz' )` | Zwraca wartość `abxyzde` |

## Przykład — podstawy Replace

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

#### Wyrażenie wykresu

Przegląd

Zestaw danych imion i nazwisk klientów zawiera błędy w pisowni. W tym przykładzie użyto funkcji `Replace` do przetworzenia i zastąpienia każdego nieprawidłowego wystąpienia słowa „Jhon” słowem „John”.

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

Skrypt ładowania zawiera:

* Zestaw danych załadowany do tabeli o nazwie `Example`.

* Tabela zawiera następujące pola:

  * `CustomerID`

  * `CustomerName`

Skrypt ładowania

```
Example:
Load * inline [
CustomerID, CustomerName
1, Jhon Smith
2, Jhon Doe
3, John Williams
4, Jhonathan Harris
];
```

Wyniki

Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:

* ` CustomerID
                                       `

* `CustomerName`

Utwórz następujący wymiar wyliczany:

* `=Replace(CustomerName,'Jhon','John')` do zastąpienia wszystkich wystąpień `Jhon` przez `John`.

Tabela wynikowa

| CustomerID | CustomerName | Replace(CustomerName,'Jhon','John') |
| --- | --- | --- |
| 1 | Jhon Smith | John Smith |
| 2 | Jhon Doe | John Doe |
| 3 | John Williams | John Williams |
| 4 | Jhonathan Harris | Johnathan Harris |

Wynik funkcji `Repeat` znajduje i koryguje wszystkie wystąpienia `Jhon` przy użyciu `John`.

## Przykład — zastosowanie Replace

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

#### Wyrażenie wykresu

Przegląd

Zestaw danych produktów używa niespójnych etykiet kodów kategorii. Na przykład produkty elektryczne mają wiele odmian kodów, takich jak `ELEC`, `ELC` i `elc`. Aby ujednolicić kody, używa się funkcji `Replace` do skorygowania wszystkich niespójnych kodów kategorii zarówno produktów elektrycznych, jak i meblowych.

Otwórz Edytor ładowania danych i poniżej dodaj skrypt ładowania do nowej sekcji.

Skrypt ładowania zawiera:

* Zestaw danych załadowany do tabeli o nazwie `Example`.

* Tabela zawiera następujące pola:

  * `ProductID`

  * `CategoryCode`

Skrypt ładowania

```
Example:
Load * inline [
ProductID, CategoryCode
1, ELEC
2, ELC
3, FURN
4, FRN
5, ELEC
6, ELC
7, elc
];
```

Wyniki

Załaduj dane i otwórz arkusz. Utwórz nową tabelę i dodaj te pola jako wymiary:

* ` ProductID
                                       `

* `CategoryCode`

Utwórz następujący wymiar wyliczany:

* `=Replace(Replace(Upper(CategoryCode), 'ELC', 'ELEC'),'FRN', 'FURN')` do zastąpienia wszystkich wystąpień `ELC` przez `ELEC` i wszystkich wystąpień `FRN` przez `FURN`.

Tabela wynikowa

| Identyfikator produktu | Kod kategorii | Zastąp(Zastąp(WielkieLitery(KodKategorii), 'ELC', 'ELEC'),'FRN', 'FURN') |
| --- | --- | --- |
| 1 | Elektryczne | Elektryczne |
| 2 | Elektryczne | Elektryczne |
| 3 | Meble | MEBLE |
| 4 | MEBLE | MEBLE |
| 5 | ELEKTRONIKA | ELEKTRONIKA |
| 6 | ELC | ELEC |
| 7 | elc | ELEC |

Wynik funkcji `Replace` zastąpił wszystkie instancje `ELC` przez `ELEC`, a `FRN` przez `FURN`. Należy zauważyć, że kod `elc` również został zastąpiony. Chociaż w funkcji `Replace` rozróżniana jest wielkość liter, formuła wymiaru używa funkcji `Upper`, aby dostosować wielkość liter wszystkich `CategoryCodes` przed zastąpieniem ciągu. Dzięki temu wielkość liter nie ma znaczenia przy zastępowaniu ciągów znaków.

## Dowiedz się więcej

* [Replace](https://help.qlik.com/pl-PL/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/Replace.htm)