var t = "\some\route\here"
I need "\some\route" from it.
Thank you.
The indexOf method returns the index of the first occurrence of a character in the string. If you need to remove everything after the last occurrence of a specific character, use the lastIndexOf method.
If you want to delete all the text after a character or string (to the right) in Notepad++ you would need to make use of regex. So, simply add . * to delete all characters after the string or character on each that you want to delete from a line.
You need lastIndexOf
and substr
...
var t = "\\some\\route\\here"; t = t.substr(0, t.lastIndexOf("\\")); alert(t);
Also, you need to double up \
chars in strings as they are used for escaping special characters.
Update Since this is regularly proving useful for others, here's a snippet example...
// 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);
As stated in @Archer's answer, you need to double up on the backslashes. I suggest using regex replace to get the string you want:
var t = "\\some\\route\\here"; t = t.replace(/\\[^\\]+$/,""); alert(t);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With