Autor Zpráva
turtle
Profil *
Mám v premennej takýto reťazec:
str="C:\Documents and Settings\rav\Dokumenty\nick\rules.png"

Prosím o radu, ako by som z toho reťazca mohol získať len path bez mena súboru, teda:

"C:\Documents and Settings\rav\Dokumenty\nick"

prípadne

"C:/Documents and Settings/rav/Dokumenty/nick"


Keďže je tam backslash nefunguje mi lastIndexOf(), replace(), split()
Neviem to spätné lomítko ani escapovať.
peta
Profil
turtle
A kdyz chces normalni apostrofy, novy radek a pod?
'\''
"\""
x = "\n"
x+= "\nAhoj"
x+= "\nKuku"
x+= "\nBubu"
alert(x)
turtle
Profil *
poučenie pre mňa do budúcnosti: to, čo nefunguje v online editore na www.w3schools.com, ešte môže fungovať normálne :-)

Je to spracovanie value z Input type File, takže iné špeciálne znaky ako windowsovské lomítka tam nebudú (a ak budú, nebude to vadiť).

takto to ide:
str="C:\Documents and Settings\rav\Dokumenty\nick\rules.png"

// prasácka zámena všetkých spätných lomítok za normálne:
// (replace mi nahradí len prvý výskyt, tak to opakujem tridsaťkrát. Ako by sa to dalo zovšeobecniť a nahradiť všetky výskyty elegantnejšie?)

for (i=0;i<=30;i++){
str= str.replace('\\', "/");
}

// nájdenie pozície posledného
ind=str.lastIndexOf("/");

// odstrihnutie
link=str.slice(0,ind));
los
Profil *
var str="C:\\Documents and Settings\\rav\\Dokumenty\\nick\\rules.png";
str = str.replace(/\\/g, "/");
str = str.substr(0, str.lastIndexOf("/"));
turtle
Profil *
los: Ďakujem, funguje

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0