2012-08-04 46 views
14

Cách lấy tên tệp từ đường dẫn chuỗi trong javascript?Lấy tên tệp từ đường dẫn chuỗi trong javascript?

Đây là mã của tôi

var nameString = "/app/base/controllers/filename.js"; //this is the input path string 

làm điều gì đó ở đây để có được chỉ tên tập tin

var name = ??? //this value should equal to filename.js 
+0

thể trùng lặp của [Làm thế nào để có được tên tập tin từ một đường dẫn đầy đủ bằng JavaScript? ] (http://stackoverflow.com/questions/423376/how-to-get-the-file-name-from-a-full-path-using-javascript) –

Trả lời

77

Hãy thử điều này:

var nameString = "/app/base/controllers/filename.js"; 
    var filename = nameString.split("/").pop(); 
+5

Rất vui khi thấy một câu trả lời đơn giản, không phải trả lời. – AlexMA

+2

Tham số '-1' là không bắt buộc (và được bỏ qua trong thực tế). https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/pop – AKX

+0

oh vâng, bạn nói đúng. – levi

6

Tôi không biết lý do tại sao bạn muốn cho chúng tôi một regex để làm điều này. Chắc chắn những điều sau đây sẽ là đủ:

var nameString = "/app/base/controllers/filename.js"; 
var nameArray = nameString.split('/'); 
var name = nameArray[nameArray.length - 1]; 
+0

Người ta có thể sử dụng regex một cách có thể tưởng tượng, nhưng tôi đồng ý với bạn. Mặc dù một regex có thể hữu ích để phân tích các đường dẫn xấu. – AlexMA

+0

Điều này thực sự phải là câu trả lời, linh hoạt hơn nhiều. –

-1

một giải pháp regex tinh khiết: \/([^\\\/:*?\"<>|]+)$
bạn sẽ nhận được tên tập tin từ nhóm 1

Các vấn đề liên quan