GoogleAppsScriptについて
こんにちは。ここに質問するのは初めてです。
GASについても初心者です。というよりプログラムに関しては初心者です。
お聞きしたいのは文字列に関してです。
スプレッドシートでのスクリプトなのですが 範囲はA行の1列目から、記入のある最終列のなかで、"[" と "]"のあるセルを見つけたら、"["から"]"までを削除するスクリプトが組みたいのですが、どのような方法がいいのかわかりません。
例として
SampleText[XXXXX]
のような文字列があった場合に、
SampleText
にしたいのです。
replaceでしようにも、[,]はいいとしても、[と]の中身は全て同じではないので指定のしようがありません。共通しているのは全角文字ということなので、全角文字の指定の仕方を調べたのですが、みたところそのような指定の仕方はないようなので・・・
なにかいい方法はありませんでしょうか?
ご教示お願いいたします。
追記
splitで[より前と後で配列分けして
[0] →SampleText
[1] →[XXXXX]
とし、setValueで配列の[0]を指定するという方法に落ち着きました。
じつは [ だけでなく ( も指定しなくてはならず、問題が発生しました。
function chikan(){
var sheet = SpreadsheetApp.getActiveSheet();
for (var i = 1; i <= sheet.getLastRow(); i++){
var val = sheet.getRange("A"+i).getValue();
var ss = val.split("[");
var sss = val.split("(");
sheet.getRange("A"+i).setValue(ss[0]);
sheet.getRange("A"+i).setValue(sss[0]);
}
}
SampleText[XXXXX]だった場合
配列は
[0]SampleText
[1][XXXXX]
になりますが、(が含まれていないので 変数sssの配列[0]にはSampleText[XXXXX]がそのまま入ってしまいます。
これですと、書き換えた後にまた戻ってしまうのでifで処理を分岐しようとしたのですが、条件をどういう風にすればいいか思いつきません。
いい案がありましたらご教示ください。お願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/04/13 13:50