JavaScript 初学者向け 正規表現でテンプレートリテラルを使う

正規表現のパターンにテンプレートリテラルを使う方法です。

例は以下です。

const pre = 'hoge'
const reg = new RegExp(`^${pre}`)
const a = reg.test('hoge')
const b = reg.test('foo')

console.log(a) // true
console.log(b) // false

reg.test() では hoge から始まる文字列を引数に渡すと true が返ります。

new RegExp(^${pre}) のところが、テンプレートリテラルを使っているところです。

これを利用すると、XXから始まる文字列をチェックする、という正規表現を動的に作成できます。

const getRegExpFromPrefix = (prefix) => {
  return new RegExp(`^${prefix}`)
}

const prefixHoge = getRegExpFromPrefix('hoge')
const prefixFoo = getRegExpFromPrefix('foo')

console.log(prefixHoge.test('hoge_tami')) //true
console.log(prefixHoge.test('tami_hoge')) //false

console.log(prefixFoo.test('foo_hito')) //true
console.log(prefixFoo.test('hito_foo')) //false