2012-08-04 17 views
14

Come ottenere il nome file da string-path in javascript?Ottieni nome file dal percorso stringa in javascript?

Ecco il mio codice

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

fare qualcosa qui per ottenere solo il nome del file

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

possibile duplicato di [Come ottenere il nome del file da un percorso completo utilizzando Javascript? ] (http://stackoverflow.com/questions/423376/how-to-get-the-file-name-from-a-full-path-using-javascript) –

risposta

77

Prova questo:

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

È bello vedere una risposta semplice, non riflettente. – AlexMA

+2

Il parametro '-1' non è richiesto (ed è ignorato di fatto). https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/pop – AKX

+0

oh sì, hai ragione. – levi

6

Non so perché ci si vuole a noi una regex per fare questo. Sicuramente il seguente sarebbe sufficiente:

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

Si potrebbe presumibilmente utilizzare una regex, ma sono d'accordo con te. Sebbene una regex potrebbe essere utile per analizzare percorsi sbagliati. – AlexMA

+0

Questa dovrebbe essere la risposta, molto più flessibile. –

-1

una soluzione regex puro: \/([^\\\/:*?\"<>|]+)$
si otterrà il nome del file dal gruppo 1

Problemi correlati