正規表現でAND検索を試してみる1
でやったことをもっと効率的な
/^(?=.*文字列1)(?=.*文字列2)/
で試してみます
ABO に AとOが両方含まれるか
コード.gs
function getAndConditional() {
var str = 'ABO';
var regexp = /^(?=.*A)(?=.*O)/;
var result = regexp.test(str);
Logger.log(result);
}
|
実行結果は true
パターンを動的に作りたい
コード2.gsfunction getAndConditional2() {
var str = 'ABO';
var values = ['A', 'O'];
var pattern = '^';
for(var i = 0; i < values.length; i++) {
pattern += '(?=.*' + values[i] + ')';
}
Logger.log(pattern);
var regexp = new RegExp(pattern);
var result = regexp.test(str);
Logger.log(result);
}
|
実行結果
参考
正規表現はこちらの記事を参考にさせていただきました
正規表現で論理積(AND)を実現する
https://qiita.com/n4o847/items/dbcd0b8af3781d221424
正規表現
正規表現はこちらの記事を参考にさせていただきました
正規表現で論理積(AND)を実現する
https://qiita.com/n4o847/items/dbcd0b8af3781d221424
正規表現
正規表現パターンの記述
