GAS で検索するときの正規表現にはまっています。
1つのセル内に改行コードが入っている場合の検索ができません。
1つのセルに
「123
あああ
2019/07/01」
と改行が入っている場合に createTextFinder で
正規表現の検索を行うと取得できません。
「123 あああ 2019/07/02」
と改行が無い場合はできるのですが。
var sheet = SpreadsheetApp.getActive().getSheetByName('test');
var re = "123[\s\S]*2019/07/02";
var textFinder = sheet.createTextFinder(re).useRegularExpression(true);
var ranges = textFinder.findAll();
Logger.log('ranges.length = ' + ranges.length) ;
for ( var i = 0; i < ranges.length; i++ ) {
Logger.log('A1Notation = ' + ranges[i].getA1Notation()) ;
}
検索文字列を
var re = "123.*2019/07/02";
に変更すると、改行がないセルは検索できますが、改行があるセルは取得できません。
画面上でCTRL + F の検索ボックスでは[\s\S]の表現は使えていましてヒットします。
宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/06/26 06:18 編集
2019/06/26 06:37