元ネタ : 【JavaScript】ファイル名(拡張子あり)からファイル名(拡張子なし)と拡張子に分割する(正規表現) - Qiita String#match()じゃなくてString#split()でできるとなんかコードの意味的にもスッキリしそう、っていう思いつきで書いてみた。 function splitExt(filename) { return filename.split(/\.(?=[^.]+$)/); } splitExt('img.jpg'); // => [ 'img', 'jpg' ] splitExt('.html'); // => [ '', 'html' ] splitExt('lib.d.ts'); // => [ 'lib.d', 'ts' ] splitExt('abc'); // => [ 'abc' ] 元ネタはString#match()を使っている