2022/02/15

SalesforceにおけるindexOf関数の使用方法と使用例を解説

 
  

SalesforceにおけるindexOf関数とは?

indexOf関数は、任意の文字列の中で指定した文字列が出現する位置を返す関数です。 Salesforceでは数値や文字列、パーセント、日付、時間、など、複数のデータ型を使用できますが、その中でも文字列を取り扱う場合には、文字列の文字数を得たり文字列内を検索したりといったように、文字列を操作することがあります。 Salesforceでは、そのような文字列操作のための関数が用意されています。文字列を対象とした関数の中でもindexOf関数は位置を得るための関数で、例えば文字列中の任意のキーワードの位置を得る場合に利用できます。 それではindexOf関数の概要や使用方法などについて見ていきましょう。

SalesforceにおけるindexOf関数の使用方法

indexOf関数は所定の構文に従って使用する必要があります。 ここではindexOf関数の使用方法として構文と、その使用例を解説します。 Salesforceにおいて、indexOf関数はApexとAMPscriptのどちらでも使える関数です。複数の使用例を元に、各ケースにおける使用方法を見ていきます。

ApexにおけるindexOf関数の構文と使用例

ApexにおけるindexOf関数には2種類の構文があります。 indexOf関数は、Stringクラスのオブジェクトのメソッドとして下記構文に従い使用します。
indexOf(検索テキスト)
indexOf(検索テキスト, 検索を開始する位置)
1行目は、検索テキストがStringオブジェクト内文字列で最初に出現する位置を数値で返します。最初に出現する位置はSringオブジェクト内文字列の先頭を0としてカウントされます。なお、検索テキストが出現しなかった場合は-1を返します。 2行目は、検索テキストがStringオブジェクト内文字列の「検索を開始する位置」以降で最初に出現する位置を数値で返します。「検索を開始する位置」はSringオブジェクト内文字列の先頭を0としてカウントします。検索テキストが出現しなかった場合は-1を返します。 それではindexOf関数の使用例を見ていきましょう。
String srcTxt = 'abcdefgh';
Integer pos = srcTxt.indexOf('d');
変数posにindexOf関数の返値3が代入されます。
String srcTxt = 'abcdabcd';
Integer pos = srcTxt.indexOf('c', 3);
位置3以降で’c’が出現する位置を返すので、srcTxt内の’d’以降に最初に出現する’c’の位置を返します。従って、変数posには二つめの’c’の位置6が代入されます。

AMPscriptにおけるindexOf関数の構文と使用例

AMPscriptにおけるindexOf関数には2つの引数を与えます。 AMPscriptにおいてIndexOf関数は下記構文に従い使用することで、検索テキストが対象となるテキストで最初に出現する位置を数値で返します。最初に出現する位置は対象となるテキストの先頭を1としてカウントされます。
IndexOf(対象となるテキスト, 検索テキスト)
それではindexOf関数の使用例を見ていきましょう。
%%[
Var @srcTxt
Set @srcTxt = 'abcdefgh'
Var @pos
Set @pos = IndexOf(@srcTxt, 'd')
]%%
変数posにIndexOf関数の返値、すなわち文字列’abcdefgh’の中での’d’の位置4が代入されます。

indexOf関数を活用しよう!

今回は、SalesforceにおけるindexOf関数について解説しました。 いくつかの使用例を元にindexOf関数の使い方を見てきました。 任意の文字列の中での指定した文字列の位置を返すindexOf関数は、Salesforceだけでなく他のプログラミング言語のindexOf関数やExcelのfind関数と同様に基本的な関数の一つです。是非活用できるようにしておきましょう。]]>

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】