Replace - スクリプトおよびチャート関数
Replace() は、指定された文字列内に含まれる指定されたサブストリングすべてを別のサブストリングで置き換えた文字列を返します。この関数は非再帰関数で、左から右へ処理されます。
構文:
Replace(text, from_str, to_str)
戻り値データ型: 文字列
引数
text
|
元の文字列。 |
from_str
|
入力文字列 text に 1 回以上現れる文字列。 |
to_str
|
text文字列に現れる from_str をすべて置き換える文字列。 |
例: チャートの数式
Replace( 'abccde','cc','xyz' )
|
abxyzde を返します |
例 - Repeat の基本
概要
顧客名のデータセットにスペルミスがあります。この例では、Replace 関数を使用して、「Jhon」の不正確な出現を処理し、「John」に置き換えます。
データ ロード エディターを開き、以下のロード スクリプトを新しいタブに追加します。
ロード スクリプトには次が含まれています。
ロード スクリプト
Example:
Load * inline [
CustomerID, CustomerName
1, Jhon Smith
2, Jhon Doe
3, John Williams
4, Jhonathan Harris
];
結果
データをロードしてシートを開きます。新しいテーブルを作成し、これらの項目を軸として追加します:
次の計算軸を作成します。
結果テーブル
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 |
Repeat 関数の出力は、Jhon のすべてのインスタンスを検出し、John で修正します。
例 - Repeat のシナリオ
概要
ある製品のデータセットで、カテゴリーコードに一貫性のないラベルが使用されています。例えば、電気製品には、ELEC、ELC、elc など、複数のコード バリエーションがあります。コードを標準化するため、Replace 関数を使用して、電気製品と家具製品の両方で、一貫性のないカテゴリー コードをすべて修正します。
データ ロード エディターを開き、以下のロード スクリプトを新しいタブに追加します。
ロード スクリプトには次が含まれています。
ロード スクリプト
Example:
Load * inline [
ProductID, CategoryCode
1, ELEC
2, ELC
3, FURN
4, FRN
5, ELEC
6, ELC
7, elc
];
結果
データをロードしてシートを開きます。新しいテーブルを作成し、これらの項目を軸として追加します:
次の計算軸を作成します。
-
=Replace(Replace(Upper(CategoryCode), 'ELC', 'ELEC'),'FRN', 'FURN')、ELC のインスタンスを ELEC に、FRN のインスタンスを FURN に置き換えます。
結果テーブル
ProductID | CategoryCode | Replace(Replace(Upper(CategoryCode), 'ELC', 'ELEC'),'FRN', 'FURN') |
---|
1 | ELEC | ELEC |
2 | ELC | ELEC |
3 | FURN | FURN |
4 | FRN | FURN |
5 | ELEC | ELEC |
6 | ELC | ELEC |
7 | elc | ELEC |
Replace 関数の出力は、ELC のインスタンスを ELEC に、FRN のインスタンスを FURN に置き換えます。コード elc も置き換えられたことに注意してください。Replace 関数は大文字と小文字を区別しますが、軸式では Upper 関数を使用して、文字列を置き換える前にすべての CategoryCodes の大文字と小文字を一致させます。これにより、文字列の置換では大文字と小文字が区別されなくなります。