パスを分割するために使用することを主張するREGEXTRACT()
場合は、次のリソースが役立つ場合があります。
ただし、Google スプレッドシートでは、パスとファイル名の文字列の特定の部分にアクセスする最も効果的な方法は、埋め込みスクリプトでカスタム関数を使用することです。アプリ スクリプト プログラミングに精通していることを前提としています。初めてのスクリプトの作成を参照してください。
次のコードには 2 つのスクリプトが含まれており、一方は他方の上に構築されています。たとえば、 を呼び出すpathExtract()
と、指定されたパス文字列の指定されたセグメントが返されます。
/**
* Split path into parts, return in array. If path started
* at 'root', first part will be "/". This function may be used
* as a custom function in Google Spreadsheets.
*
* @var {string} path The search path, e.g. "/a/b/c/d.txt"
* @return {array} Result of splitting path at "/".
*/
function pathSplit( path ) {
var arr = path.split('/');
if (path[0] === "/") {
arr[0] = "/";
}
return ( arr );
}
/*
* Get a portion of a path string. To match INDEX() function,
* the parameter index is 1-based. Requesting index 0 will
* result in the last element from the string. This function
* may be used as a custom function in Google Spreadsheets.
*
* @var {string} path The search path, e.g. "/a/b/c/d.txt".
* @var {number} index 1-n, the element to extract. 0 for last.
* @return {string} Element [index] from path, or *ERROR*.
*/
function pathExtract( path, index ) {
var result = "*ERROR*";
var pathArray = pathSplit( path );
if (index >= 1 && index <= pathArray.length) {
result = pathArray[index-1];
}
if (index === 0) {
result = pathArray[pathArray.length-1];
}
return ( result );
}
スプレッドシートに追加されたこれらのスクリプトでできることの例をいくつか示します。

