簡體   English   中英

處理文件夾路徑並在一行中處理尾部斜杠?

[英]Process folder path and handle trailing slash in a single line?

此代碼接受path/to/folderpath/to/folder/ (注意尾部斜杠)並提取字符串中最后一個文件夾的名稱,即:

path = 'path/to/folder'.split('/');
folder = path.pop() || path.pop(); // taking care of trailing slash

// folder == 'folder'

我很好奇,是否有可能把它變成一個單行程? 我會很感激正則表達式和非正則表達式的答案:)

作為旁注,我剛剛意識到我的代碼不知道如何處理多個尾部斜杠(如拼寫錯誤) - 所以如果你能考慮到這一點,我會很感激。

編輯:我真的希望看到一個非正則表達式的答案

我想這就是你想要的:

path = 'path/to/folder';
folder = path.match(/\/([^\/]+)[\/]*$/)[1]

應該使用或不使用斜杠和兩個斜杠。

在現代瀏覽器中,您可以執行以下操作:

folder = (path + '/').split(/\/+|\\+/).slice(0, path.split(/\/+|\\+/).indexOf(''));

代碼也處理反斜杠,甚至混合斜杠。 一個簡單的小提琴

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM