JavaScriptで文字列パスからファイル名を抽出する方法
文字列として渡されたファイルパスからファイル名を取得する関数を作成する必要があります。通常、ファイル名はパスの一番最後に位置しています。正規表現を使って解決することも可能ですが、JavaScriptのsplit()メソッドを使えば、よりシンプルな一行の解決策を実現できます。本記事では、その方法を詳しく解説します。
例として、次のようなファイルパスを考えてみましょう。
/app/base/controllers/filename.js
実装例
以下のコードは、文字列パスからファイル名を取得するものです。
const filePath = "/app/base/controllers/filename.js";
const extractFilename = (path) => {
const pathArray = path.split("/");
const lastIndex = pathArray.length - 1;
return pathArray[lastIndex];
};
console.log(extractFilename(filePath));このコードの仕組みはシンプルです。まずsplit("/")メソッドでパスをスラッシュ区切りで配列に分割し、配列の最後の要素(インデックスはlength - 1)を返すことで、ファイル名だけを取り出しています。
出力結果
このコードを実行すると、コンソールには次のように表示されます。
filename.js
補足:pop()メソッドでさらに簡潔に書く
コードをさらに短くしたい場合は、配列のpop()メソッドを使って最後の要素を直接取得する方法も便利です。
const extractFilename = (path) => {
return path.split("/").pop();
};
console.log(extractFilename("/app/base/controllers/filename.js")); // filename.jsまた、Windows形式のパス(バックスラッシュ区切り)にも対応したい場合は、split()メソッドに正規表現/[\/\\]/を渡すことで、スラッシュとバックスラッシュのどちらの区切り文字にも対応できるようになります。
-
JavaScriptの配列を文字列に変換する方法【toString()の使い方を解説】
JavaScriptで配列の要素をひとつの文字列として扱いたい場面はよくあります。そんなときに便利なのがtoString()メソッドです。このメソッドを使うと、配列の各要素がカンマ(,)で区切られたひとつの文字列に変換されます。以下は、ボタンをクリックすると配列の中身が文字列として画面に表示されるシンプルなサンプルコードです。サンプルコード<!DOCTYPE html> <html lang=ja> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device-
-
【Excel】パスからファイル名だけを抽出する6つの簡単な方法
Microsoft Excelで作業していると、長いファイルパスからファイル名だけを抜き出したい場面がよくあります。パスの長さはさまざまで、手作業で削除するのは手間もミスも増えがちです。この記事では、Excelでパスからファイル名を取得するための実践的な方法を6つ、具体例とともにわかりやすく解説します。 Excelでパスからファイル名を取得する6つの方法 ここでは、以下のようなサンプルデータ(セルB5:B11にファイルパスが入力された表)を使って説明します。関数やVBAコードを活用すれば、誰でも簡単にファイル名だけを取り出せます。それでは順番に見ていきましょう。 方法1:「検索と置換」機能を