StringSplit 関数
この関数は、選択した文字列を指定した文字で区切り、その時に分割した文字列の数を取得します。
区切りに指定された文字の前後で分割が行なわれ、区切りに指定された文字は削除されます。
たとえば、「abcd」を「b」で分割した場合、「a」と「cd」の 2つに分割されます。取得される値は分割された数なので 2になります。
データ型と構成・戻り値
int StringSplit(①, ②, ③);
戻り値は、分割後の文字列の数を返します。
引数 [3]
StringSplit関数は 3個の引数で構成されます。
番 号 | 引数名 | データ型 | 単位 | 初期値 | 説明 |
---|---|---|---|---|---|
① | string_value | const string | - | - | 分割する文字列。 |
② | separator | const ushort | - | - | 分割の区切りとする文字 または 文字コード。 文字で指定する時は文字をシングルクォーテーション(‘)で囲んでください。 文字コードは StringGetCharacter関数で取得することができます。取得方法はこちらを参考にしてください。 |
③ | result[] | string | - | - | ①を分割した文字列を格納する配列。 |
使用例
StringSplit関数を使った文字列の分割
選択した文字列を分割します。分割で区切る文字はシングルクォーテーションを使って直接文字を設定します。
コード
// StringSplit関数を使った文字列の分割
#property strict
void OnInit() {
string str = "abc-defgh-ijklmn"; // 分割する文字列
string arr[]; // 分割した文字列を格納する配列
int n = StringSplit(str, '-', arr); // 分割した文字列を配列へ格納
Print("分割数:", n, "個"); // 分割後の文字列の数
for(int i=0; i<n; i++) {
Print(i+1, "分割目:", arr[i]); // 分割した文字列の取得
}
}
コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)