Google Apps Scriptで文字や数字を1文字ずつ分割・取り出し、配列に格納する方法

Google Apps Script(GAS)で数値や文字を扱っているときに、一文字ずつに分割したいケースがあります。

例えば、ある数値を各桁ごとの数字を取り出して、1桁ずつ処理したい場合などです。

今回、GASで文字列や数値を1文字ずつ区切ったものを配列に格納する方法を紹介します。

GASで1文字ずつ分割・取り出したいケース

Google Apps Scriptでは、1文字ずつ分割して取り出して処理を行いたいニーズがあります。

文字列を一文字ずつ取り出したい

1つ目のケースとしては文字列を一文字ずつ取り出したい場合です。

例えば「プログラム」という文字列を分解して、「プ」、「ロ」、「グ」、「ラ」、「ム」と取得します。

クロスワードのプログラムを作成したい場合などにこうした一文字ずつ抽出することが必要になってきます。

数値の各桁の数字を1桁ずつ取得したい

数値型の変数でも各桁の数字を一桁ずつ取得したいケースがあります。

例えば、13桁のISBN13のコードを10桁のISBNコードに変換したい場合には、各桁の数字を計算が必要です。

こうした様々なケースで一桁ずつ分割するのがGASのプログラムでも求められるようになっています。

GASで1文字ずつ区切るのにsplitメソッド

Google Apps Script(GAS)で1文字ずつ区切って取得したい場合には、splitメソッドを利用します。

通常の場合、splitメソッドでは引数として区切りとなる文字を指定します。

例えばtest="山、川、海"という変数で、test.split(“、")とすると、[“山","川","海"]と配列に分割されます。

1文字ずつ区切りたい場合には、引数には何も指定しない「""」と入力します。

1文字ずつ分割して配列に格納するGASサンプルコード

実際にsplitメソッドを使った、1文字ずつ分割して配列に格納するGASコードを紹介します。

function myFunction() {
let test = "982719098"
let splitTest = test.split("");
Logger.log(splitTest);
}

Google Apps Script(GAS)で数値や文字列を一文字ずつ分割して取り出す方法

こちらのサンプルコードを実行すると、「982719098」が1桁ずつの数値として取り出すことができました。

Google Apps Script(GAS)のsplitで一文字ずつ分割した実行結果

n進数の変換方法などでもこの手法は活用できます。

まとめ・終わりに

今回、Google Apps Script(GAS)で文字列や数値を1文字ずつ分割して取り出す方法を紹介しました。

GASの文字列で利用できるsplitメソッドで引数に「""」を指定することで1文字ずつ配列に格納できます。

1文字ずつ取り出したい処理をしたい場合には、splitを使って実装を行いましょう。