Mam taki ciąg: -

var src=url("http://localhost:200/assets/images/eyecatcher/6/black6.png)"

A teraz chcę uzyskać nazwę obrazu I.E {X0}} i nazwa folderu 6. Wiem, że funkcja jest substr, którą mogę użyć, ale nazwa pliku i folder nazwa będzie dynamiczna jak orange12.png i 12 itd.

Jak mogę uzyskać te wartości? Proszę pomóż mi.

Dzięki

5
user3819192 18 sierpień 2014, 16:36

5 odpowiedzi

Najlepsza odpowiedź

Jeśli adres URL podstawy jest zawsze taki sam, możesz to zrobić

var url = "http://localhost:200/assets/images/eyecatcher/6/black6.png";
var bits = url.replace("http://localhost:200/assets/images/eyecatcher/", "").split("/");
var folder = bits[0], // 6
    file = bits[1];  // black6.png
5
Charleshaa 18 sierpień 2014, 12:40

Możesz użyć {x0}} metoda:

var src = "http://localhost:200/assets/images/eyecatcher/6/black6.png";
var parsed = src.split( '/' );
console.log( parsed[ parsed.length - 1 ] ); // black6.png
console.log( parsed[ parsed.length - 2 ] ); // 6
console.log( parsed[ parsed.length - 3 ] ); // eyecatcher

Itp.

8
antyrat 18 sierpień 2014, 12:39
var img_name = src.split('/')[7];
var folder_name = src.split('/')[6];
2
Mupmup 18 sierpień 2014, 12:41

Za pomocą split & amp; slice, powiedzmy jak poniżej

var src = "http://localhost:200/assets/images/eyecatcher/6/black6.png";
var arr = src.split('/').slice(-2) //returns ["6", "black6.png"]
arr[0] //folderName
arr[1] //filename
2
Mritunjay 18 sierpień 2014, 12:41
var str = "http://MachineName:200/assets/images/eyecatcher/6/black6.png";

var newStr = str.split("/");  

ubound = newStr.length;

fileName = newStr[ubound-1];
2
tharo 18 sierpień 2014, 13:02