split_to¶
Category: 変数・呼び出し
書式¶
(split_to、接頭辞、文字列)
(split_to、接頭辞、文字列、区切り文字)
(split_to、接頭辞、文字列、区切り文字、最大個数)
(split_to、接頭辞、文字列、区切り文字、最大個数、空要素を残す)
引数¶
| 引数 | 説明 |
|---|---|
| 接頭辞 | 結果を入れる変数の名前の先頭部分 |
| 文字列 | 分割する文字列 |
| 区切り文字 | 区切りにする文字を並べたもの。1 文字ずつがそれぞれ区切りになる |
| 最大個数 | 分割後の要素数の上限(省略または 0 で無制限)。上限に達したら、残りは 1 つの要素にまとまる |
| 空要素を残す | 0 以外なら、区切りが連続してできた空の要素も残す(既定は残さない) |
戻り値¶
空文字列。結果は変数 接頭辞0、接頭辞1…(数字は半角)に入り、個数は変数 接頭辞の数 に入ります。
解説¶
ssu の split と同じように分割し、結果を (S0) (S1)… ではなく、指定した接頭辞の変数に入れます。(S0) や (Sの数) は変わらないので、ほかの場所の split や SAORI の結果を上書きしません。
- 分割のしかた(区切り文字・最大個数・空要素)は split と同じです。区切り文字を省略した場合や空の場合は、1 文字ずつに分けます。
- 前回の
split_toで同じ接頭辞に入れた要素のほうが多かった場合、余った接頭辞nは削除されます(接頭辞の数の値を見て消します)。 - 変数は値の計算をせずに代入されます。空の要素も空の変数として入ります。
- 接頭辞は空にできません。
SARHC(全角も)の 1 文字は、S0などが変数ではなく引数・結果の値として扱われるため使えません(エラーログを出して何もしません)。 - 引数は通常の内蔵関数と同じく、先に
()を展開してから分けられます。そのため、呼び出しに使った引数の区切りと同じ文字は、区切り文字に指定できません(、で区切って呼べば、,は区切り文字に使えます)。 - 先頭が数字の引数は、$SAORI引数の計算に従って計算されます。
(split_to、k、1-2-3、-)は1-2-3が先に-4になってから分割され、(k0)は4になります。数字で始まる文字列を分けるときは$SAORI引数の計算=無効にしてください(ssu のsplitも同じです)。
ローカルのみの関数です。外部からのイベントでは実行されず、空文字列になります。
Mc201-5以降。
使用例¶
(split_to、x、a-b-c、-)(x0)/(x1)/(x2)/(xの数)
(split_to、x、p-q、-)(xの数)/(変数「x2」の存在)/(x1)
(split_to、w、a--b、-、0、1)(wの数)[(w1)]
(split_to、z、あいう)(zの数)(z2)
1 行目は a/b/c/3、2 行目は 2/0/q(前回の x2 は消える)、3 行目は 3[]、4 行目は 3う になります。
(S0) は変わりません。
(split、m-n、-)(split_to、y、u|v、|)(S0)(y1)(Sの数)
2mv2 になります(先頭の 2 は split の戻り値)。
要素を順に取り出すには、for のカウンタと組み合わせます。
(split_to、項目、りんご|みかん|ぶどう、|)
(for、0、(calc、(項目の数)-1)、(項目(C0))/)
2 行目は りんご/みかん/ぶどう/ になります。