2012 年 3 月 23 日 金曜日
▼サンプルスクリプト
セル編集時に、A列すべての文字列前後のスペースを除去する例
// A列すべて空白除去
function onEdit(){
var activeSheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
for(var i=1; i<=activeSheet.getLastRow(); i++){
var currentValue = activeSheet.getRange('A'+i).getValue();
currentValue = currentValue.replace(/(^\s+)|(\s+$)/g, "");
activeSheet.getRange('A'+i).setValue(currentValue);
}
}
あるいは、あらかじめ空白除去用に関数を用意しておく。
// trim関数を定義する
function trim_(target){
if (target == null || target == undefined){
return "";
}
return target.replace(/(^\s+)|(\s+$)/g, "");
}
JavaScriptにはtrim関数が用意されていないため、正規表現による文字列置換を実装することがあるが、Google Apps Scriptにもtrim関数が用意されていないので、同じ手法を用いている。
1つ目のサンプルでは、スプレッドシートのセル編集をトリガーとして実行されるonEditメソッドに、A列の1行目から最終行までループしながら、文字列前後の空白文字を除去する処理を実装している。
2つ目のサンプルでは、trim用の関数を自作している。あらかじめ実装しておけば、プロジェクト中のどこからでもtrim_("trimする文字列")で関数を呼び出すことができる。
このエントリーのトラックバックURL:
http://www.bmoo.net/archives/2012/03/312990.html/trackback
Google Apps Scriptにもtrim関数ありますよ。
Logger.log(‘”‘ + ‘ aiueo ‘.trim() + ‘”‘);
それは知りませんでした。
時間ができたら記事修正します。
情報ありがとうございます!
[…] ブログ記事のURLデータも今回はたまたまあるので、IPアドレスよりもURLを取り出したほうが使えそうな気が今更ながらしました(笑)ちなみに取り出した場合改行コードがあるならTrim関数を自作するなどが一番早そうです。[GAS]文字列のスペースを除去(Trim)するには: 逆引きGoogle Apps Scriptが参考になります。 […]