# Replace 스크립트 및 차트 함수

Replace()는 입력 문자열 내에서 특정 부분 문자열의 모든 발견 항목을 다른 부분 문자열로 대체한 후의 문자열을 반환합니다. 이 함수는 비재귀적이며 왼쪽에서 오른쪽으로 작동합니다.

구문:

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

반환 데이터 유형: 문자열

인수

| 인수 | 설명 |
| --- | --- |
| text | 원래 문자열입니다. |
| from\_str | 입력 문자열 text 내에서 한 번 이상 발견될 수 있는 문자열입니다. |
| to\_str | 문자열 text 내 from\_str의 모든 발견 항목을 대체할 문자열입니다. |

예: 차트 표현식

| 예제 | 결과 |
| --- | --- |
| `Replace( 'abccde','cc','xyz' )` | `abxyzde`를 반환합니다. |

## 예 - Replace 기본 사항

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

#### 차트 표현식

개요

고객 이름 데이터 집합에 일부 철자 오류가 있습니다. 이 예에서는 `Replace` 함수를 사용하여 잘못된 'Jhon'을 'John'으로 바꿉니다.

데이터 로드 편집기를 열고 새 섹션에 아래 로드 스크립트를 추가합니다.

로드 스크립트에는 다음이 포함됩니다.

* `Example`이라는 데이터 테이블에 로드되는 데이터 집합입니다.

* 데이터 테이블의 필드는 다음과 같습니다.

  * `CustomerID`

  * `CustomerName`

로드 스크립트

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

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.

* ` CustomerID
                                       `

* `CustomerName`

다음 계산된 차원을 만듭니다.

* `=Replace(CustomerName,'Jhon','John')`은 `Jhon`의 모든 인스턴스를 `John`으로 바꿉니다.

결과 테이블

| 고객 ID | CustomerName | Replace(CustomerName,'Jhon','John') |
| --- | --- | --- |
| 1 | Jhon Smith | John Smith |
| 2 | Jhon Doe | John Doe |
| 3 | John Williams | John Williams |
| 4 | Jhonathan Harris | Jhonathan Harris |

`Repeat` 함수의 출력은 `Jhon`의 모든 인스턴스를 `John`으로 찾아서 수정합니다.

## 예 - Replace 시나리오

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

#### 차트 표현식

개요

제품 데이터 집합에서 범주 코드에 일관되지 않은 레이블이 사용됩니다. 예를 들어, 전기 제품에는 `ELEC`, `ELC`, `elc`과 같이 여러 가지 코드 변형이 있습니다. 코드를 표준화하기 위해 `Replace` 함수를 사용하여 전기 및 가구 제품 모두에 대한 모든 불일치한 범주 코드를 수정합니다.

데이터 로드 편집기를 열고 새 섹션에 아래 로드 스크립트를 추가합니다.

로드 스크립트에는 다음이 포함됩니다.

* `Example`이라는 데이터 테이블에 로드되는 데이터 집합입니다.

* 데이터 테이블의 필드는 다음과 같습니다.

  * `ProductID`

  * `CategoryCode`

로드 스크립트

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

결과

데이터를 로드하고 시트를 엽니다. 새 테이블을 만들고 다음 필드를 차원으로 추가합니다.

* ` ProductID
                                       `

* `CategoryCode`

다음 계산된 차원을 만듭니다.

* `=Replace(Replace(Upper(CategoryCode), 'ELC', 'ELEC'),'FRN', 'FURN')`은 `ELC`의 모든 인스턴스를 `ELEC`로, `FRN`의 모든 인스턴스를 `FURN`으로 바꿉니다.

결과 테이블

| 제품 ID | 카테고리 코드 | 대체(대체(대문자(카테고리 코드), 'ELC', 'ELEC'),'FRN', 'FURN') |
| --- | --- | --- |
| 1 | ELEC | ELEC |
| 2 | ELC | 전기 |
| 3 | 가구 | 가구 |
| 4 | 가구 | 가구 |
| 5 | ELEC | ELEC |
| 6 | ELC | ELEC |
| 7 | elc | ELEC |

`Replace` 함수의 출력은 `ELC`의 모든 인스턴스를 `ELEC`로, `FRN`을 `FURN`으로 바꿨습니다. `elc` 코드도 바뀌었습니다. `Replace` 함수는 대/소문자를 구분하지만, 차원 수식은 문자열을 바꾸기 전에 `Upper` 함수를 사용하여 모든 `CategoryCodes`의 대/소문자를 일치시킵니다. 이렇게 하면 문자열을 바꿀 때 대/소문자를 구분하지 않고 랜더링됩니다.

## 자세한 정보

* [Replace](https://help.qlik.com/ko-KR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/Replace.htm)