教えて!GAS!

GASの基礎知識・書き方について紹介します。

Google Apps ScriptでのStringオブジェクトの種類

Stringオブジェクトは、テキストデータを扱うためのオブジェクトです。Stringオブジェクトを使うことで、文字列の操作や情報の取得が簡単にできます。

オブジェクト一覧

主なオブジェクトを紹介します。

メンバー 説明
charAt(位置) 文字列内の指定された位置にある文字を返します
charCodeAt(位置) 文字列内の指定された位置にある文字のUnicode値を返します
concat(文字列1, 文字列2, ...) 文字列を連結して新しい文字列を返します
endsWith(検索文字列, [位置]) 文字列が指定された検索文字列で終わるかどうかを確認します
includes(検索文字列, [開始位置]) 文字列が指定された検索文字列を含むかどうかを確認します
indexOf(検索文字列, [開始位置]) 指定された検索文字列が最初に出現する位置を返します
lastIndexOf(検索文字列, [開始位置]) 指定された検索文字列が最後に出現する位置を返します
localeCompare(比較文字列, [ローカル]) 文字列をローカル依存の順序で比較し、その結果を返します
match(正規表現) 文字列と正規表現が一致する部分を検索し、結果を配列で返します
normalize([形式]) Unicode文字列を正規化します
padEnd(長さ, [埋める文字列]) 文字列の末尾に指定した文字列を追加して、指定の長さに揃えます
padStart(長さ, [埋める文字列]) 文字列の先頭に指定した文字列を追加して、指定の長さに揃えます
repeat(回数) 文字列を指定された回数繰り返して新しい文字列を返します
replace(検索文字列/正規表現, 置換文字列/関数) 文字列内の特定の部分を別の文字列または関数によって置き換えます
search(正規表現) 文字列内で正規表現に一致する部分を検索し、その位置を返します
slice(開始位置, [終了位置]) 文字列の一部を抽出して新しい文字列を返します
split(区切り文字, [制限]) 文字列を指定された区切り文字で分割し、配列で返します
startsWith(検索文字列, [開始位置]) 文字列が指定された検索文字列で始まるかどうかを確認します
substring(開始位置, [終了位置]) 文字列の一部を抽出して新しい文字列を返します
toLocaleLowerCase([ローカル]) 文字列を小文字に変換し、ローカル依存の形式で返します
toLocaleUpperCase([ローカル]) 文字列を大文字に変換し、ローカル依存の形式で返します
toLowerCase() 文字列を小文字に変換して返します
toString() 文字列形式の値を返します
toUpperCase() 文字列を大文字に変換して返します
trim() 文字列の両端にある空白を削除して返します
trimEnd() 文字列の末尾の空白を削除して返します
trimStart() 文字列の先頭の空白を削除して返します
valueOf() 文字列オブジェクトのプリミティブ値を返します
length 文字列の長さを返します

プログラミング例

具体的なプログラミング例を紹介します。

charAt(位置) の例

function 文字を取得() {
    let 文字列 = "こんにちは";
    let 文字 = 文字列.charAt(2);
    console.log("結果:", 文字); // 結果: に
}
文字を取得();

charCodeAt(位置) の例

function 文字コードを取得() {
    let 文字列 = "こんにちは";
    let 文字コード = 文字列.charCodeAt(2);
    console.log("結果:", 文字コード); // 結果: 12395
}
文字コードを取得();

concat(文字列1, 文字列2, ...) の例

function 文字列を結合() {
    let 文字列1 = "こんにちは";
    let 文字列2 = "世界";
    let 結果 = 文字列1.concat("、", 文字列2);
    console.log("結果:", 結果); // 結果: こんにちは、世界
}
文字列を結合();

endsWith(検索文字列, [位置]) の例

function 末尾を確認() {
    let 文字列 = "こんにちは世界";
    let 結果 = 文字列.endsWith("世界");
    console.log("結果:", 結果); // 結果: true
}
末尾を確認();

includes(検索文字列, [開始位置]) の例

function 文字列を含むか確認() {
    let 文字列 = "こんにちは世界";
    let 結果 = 文字列.includes("世界");
    console.log("結果:", 結果); // 結果: true
}
文字列を含むか確認();

indexOf(検索文字列, [開始位置]) の例

function 位置を取得() {
    let 文字列 = "こんにちは世界";
    let 位置 = 文字列.indexOf("にち");
    console.log("結果:", 位置); // 結果: 2
}
位置を取得();

lastIndexOf(検索文字列, [開始位置]) の例

function 最後の位置を取得() {
    let 文字列 = "こんにちは、こんにちは";
    let 位置 = 文字列.lastIndexOf("にち");
    console.log("結果:", 位置); // 結果: 8
}
最後の位置を取得();

localeCompare(比較文字列, [ローカル]) の例

function 文字列を比較() {
    let 文字列1 = "あいうえお";
    let 文字列2 = "かきくけこ";
    let 比較結果 = 文字列1.localeCompare(文字列2);
    console.log("結果:", 比較結果); // 結果: -1 (文字列1が文字列2より前に来る場合)
}
文字列を比較();

match(正規表現) の例

function 正規表現に一致() {
    let 文字列 = "abc123def";
    let 結果 = 文字列.match(/\d+/);
    console.log("結果:", 結果[0]); // 結果: 123
}
正規表現に一致();

normalize([形式]) の例

function 文字列を正規化() {
    let 文字列 = "\u006E\u0303"; // "ñ"を表す
    let 正規化された文字列 = 文字列.normalize();
    console.log("結果:", 正規化された文字列); // 結果: ñ
}
文字列を正規化();

padEnd(長さ, [埋める文字列]) の例

function 末尾を埋める() {
    let 文字列 = "123";
    let 結果 = 文字列.padEnd(5, "0");
    console.log("結果:", 結果); // 結果: 12300
}
末尾を埋める();

padStart(長さ, [埋める文字列]) の例

function 先頭を埋める() {
    let 文字列 = "123";
    let 結果 = 文字列.padStart(5, "0");
    console.log("結果:", 結果); // 結果: 00123
}
先頭を埋める();

repeat(回数) の例

function 繰り返す() {
    let 文字列 = "abc";
    let 結果 = 文字列.repeat(3);
    console.log("結果:", 結果); // 結果: abcabcabc
}
繰り返す();

replace(検索文字列/正規表現, 置換文字列/関数) の例

function 文字列を置換() {
    let 文字列 = "こんにちは世界";
    let 結果 = 文字列.replace("世界", "皆さん");
    console.log("結果:", 結果); // 結果: こんにちは皆さん
}
文字列を置換();

search(正規表現) の例

function 正規表現で検索() {
    let 文字列 = "abc123def";
    let 位置 = 文字列.search(/\d+/);
    console.log("結果:", 位置); // 結果: 3
}
正規表現で検索();

slice(開始位置, [終了位置]) の例

function 部分文字列を抽出() {
    let 文字列 = "こんにちは世界";
    let 部分文字列 = 文字列.slice(2, 5);
    console.log("結果:", 部分文字列); // 結果: んにち
}
部分文字列を抽出();

split(区切り文字, [制限]) の例

function 文字列を分割() {
    let 文字列 = "りんご,みかん,バナナ";
    let 結果 = 文字列.split(",");
    console.log("結果:", 結果); // 結果: ["りんご", "みかん", "バナナ"]
}
文字列を分割();

startsWith(検索文字列, [開始位置]) の例

function 先頭を確認() {
    let 文字列 = "こんにちは世界";
    let 結果 = 文字列.startsWith("こんにちは");
    console.log("結果:", 結果); // 結果: true
}
先頭を確認();

substring(開始位置, [終了位置]) の例

function 部分文字列を取得() {
    let 文字列 = "こんにちは世界";
    let 結果 = 文字列.substring(2, 5);
    console.log("結果:", 結果); // 結果: んにち
}
部分文字列を取得();

toLocaleLowerCase([ローカル]) の例

function 小文字に変換() {
    let 文字列 = "HELLO";
    let 結果 = 文字列.toLocaleLowerCase();
    console.log("結果:", 結果); // 結果: hello
}
小文字に変換();

toLocaleUpperCase([ローカル]) の例

function 大文字に変換() {
    let 文字列 = "hello";
    let 結果 = 文字列.toLocaleUpperCase();
    console.log("結果:", 結果); // 結果: HELLO
}
大文字に変換();

toLowerCase() の例

function 小文字に変換() {
    let 文字列 = "HELLO";
    let 結果 = 文字列.toLowerCase();
    console.log("結果:", 結果); // 結果: hello
}
小文字に変換();

toString() の例

function 文字列として取得() {
    let 文字列 = "123";
    let 結果 = 文字列.toString();
    console.log("結果:", 結果); // 結果: 123
}
文字列として取得();

toUpperCase() の例

function 大文字に変換() {
    let 文字列 = "hello";
    let 結果 = 文字列.toUpperCase();
    console.log("結果:", 結果); // 結果: HELLO
}
大文字に変換();

trim() の例

function 空白を除去() {
    let 文字列 = "  こんにちは  ";
    let 結果 = 文字列.trim();
    console.log("結果:", 結果); // 結果: こんにちは
}
空白を除去();

trimEnd() の例

function 末尾の空白を除去() {
    let 文字列 = "こんにちは   ";
    let 結果 = 文字列.trimEnd();
    console.log("結果:", 結果); // 結果: こんにちは
}
末尾の空白を除去();

trimStart() の例

function 先頭の空白を除去() {
    let 文字列 = "   こんにちは";
    let 結果 = 文字列.trimStart();
    console.log("結果:", 結果); // 結果: こんにちは
}
先頭の空白を除去();

valueOf() の例

function プリミティブ値を取得() {
    let 文字列 = new String("こんにちは");
    let 結果 = 文字列.valueOf();
    console.log("結果:", 結果); // 結果: こんにちは
}
プリミティブ値を取得();

length(プロパティ) の例

function 長さを取得() {
    let 文字列 = "こんにちは世界";
    let 長さ = 文字列.length;
    console.log("結果:", 長さ); // 結果: 7
}
長さを取得();

まとめ

Stringオブジェクトでは、文字列を操作するための多様なメソッドとプロパティが提供されています。これらを活用することで、テキストデータを効果的に処理できます。上記のプログラム例では、文字列の長さの取得、大文字への変換、特定の文字列の検索と置換など、よく使われる操作を紹介しました。これらのメソッドを理解することで、より柔軟に文字列を操作できるようになります。