var t = "\\some\\route\\here";
t = t.substr(0, t.lastIndexOf("\\"));
alert(t);
Кроме того, вам нужно удвоить символы \ в строках, так как они используются для экранирования специальных символов.
Обновление
Поскольку это регулярно оказывается полезным для других, вот пример фрагмента...
// the original string
var t = "\\some\\route\\here";
// remove everything after the last backslash
var afterWith = t.substr(0, t.lastIndexOf("\\") + 1);
// remove everything after & including the last backslash
var afterWithout = t.substr(0, t.lastIndexOf("\\"));
// show the results
console.log("before : " + t);
console.log("after (with \\) : " + afterWith);
console.log("after (without \\) : " + afterWithout);
Ответ 2
Как указано в ответе @Archer, вам нужно удвоить обратную косую черту. Я предлагаю использовать замену регулярных выражений, чтобы получить нужную строку:
var t = "\\some\\route\\here";
t = t.replace(/\\[^\\]+$/,"");
alert(t);
Ответ 3
Используя JavaScript, вы можете просто добиться этого. Удалите все после последнего "_" события.
var newResult = t.substring(0, t.lastIndexOf("_") );