Google Apps Scriptで文字列の長さ・文字数を取得する方法(lengthプロパティ)
Google Apps Script(GAS)で取り扱う文字列の長さを取得する方法を紹介します。
GASでは文字列でlengthプロパティを利用することで、文字列の長さ(文字数)を知ることができます。
GAS文字列のlengthで文字数を取得
Google Apps Script(GAS)で文字列の長さ(文字数)を使いたい場合には、「lengthプロパティ」を利用します。
String.length
lengthプロパティはメソッドと異なり引数が必要ないため、括弧()はいりません。
String型変数からlengthプロパティで文字数を表示するGASのサンプルコードは以下の通りです。
function myFunction() {
let testText = "これは何文字?";
//この場合7文字にカウント
Logger.log(testText.length);
}
String型変数のtestTextに格納された「これは何文字?」の文字数をlengthプロパティが7.0と算出してくれます。
半角文字は1文字?全角文字は2文字?
Google Apps Script(GAS)の文字列のlengthプロパティでは、半角・全角文字のカウントはどうなるでしょうか。
半角文字、全角文字どちらであっても、1文字は1文字としてカウントされます。
そのため、特に半角と全角が混ざりあった文字列であっても、文字数を取得するための特別な処理は必要ありません。
ただ、Twitter投稿のような全角文字は140字、半角文字は280字までといった投稿文字数に条件がある場合には、工夫が必要です。
※最も簡単なのは必ず140文字以下にしておくことです。
空白や特殊文字は文字数にカウントされる?
文字列のカウントでは、空白や特殊文字についても1文字としてカウントされます。
上記のlengthのサンプルコードでは空白が1文字とカウントされています。
改行文字\nのような文字の場合は、そのままカウントすると、\とnの2文字ですが、特殊文字は「\n」で1文字としてカウントされます。
そのため、空白と同じように特殊文字は1文字とカウントされています。
lengthプロパティの活用事例
lengthプロパティで文字列の文字数を取得することで色々な文字列処理を行うことができます。
例えば、forループでlengthプロパティを上限に設定することで、文字数に応じた処理が可能です。
for(i=0;i<testText.length;i++){
//文字数の数だけ処理を行うことができる
}
その他にもURLを文字列で取得し、文字数が取得できると、末尾から○文字を切り取るといった処理もできます。
文字列処理をする中では、lengthプロパティを上手に活用することが大切です。
まとめ・終わりに
今回、Google Apps Script(GAS)の文字列の長さ(文字数)をlengthプロパティで取得する方法を紹介しました。
lengthプロパティは半角・全角関係なく1文字とカウントされ、空白文字や改行文字などの特殊文字も1文字とカウントされます。
lengthプロパティはforループなどで文字列処理に必要不可欠なので、ぜひ上手く活用しましょう。
ディスカッション
コメント一覧
まだ、コメントがありません