在 javascript 中删除字符串中特定重复字符之前的元素
Removing elements of string before a specific repeated character in it in javascript
我试图从我的字符串中删除以这种方式重复多次的特定字符之前的所有元素:
let string = http://localhost:5000/contact-support
因此我只是想删除第三个之前的所有内容 /
结果:contact_support
为此,我刚刚设置:
string.substring(string.indexOf('/') + 3);
猜猜这不是正确的方法
关于如何以最简单的方式改进它,请提供帮助?
提前致谢!!!
希望这能奏效
string.split("/")[3]
它将return第三个正斜杠后的子字符串。
您似乎想在这里做一些 URL 解析。 JS 带来了少数 URL
实用程序,可以帮助您完成此任务和其他类似任务。
const myString = 'http://localhost:5000/contact-support';
const pathname = new URL(myString).pathname;
console.log(pathname); // outputs: /contact-support
// then you can also remove the first "/" character with `substring`
const whatIActuallyNeed = pathname.substring(1, pathname.length);
console.log(whatIActuallyNeed); // outputs: contact-support
您也可以使用 lastIndexOf('/')
,像这样:
string.substring(string.lastIndexOf('/') + 1);
另一种可能是正则表达式:
string.match(/[^\/]*\/\/[^\/]*\/(.*)/)[1];
请注意,您必须转义斜线,因为它是正则表达式中的分隔符。
如果您希望明确使用 indexOf 函数,string.substring(string.lastIndexOf('/')+1)
也可以完成这项工作。
我试图从我的字符串中删除以这种方式重复多次的特定字符之前的所有元素:
let string = http://localhost:5000/contact-support
因此我只是想删除第三个之前的所有内容 /
结果:contact_support
为此,我刚刚设置:
string.substring(string.indexOf('/') + 3);
猜猜这不是正确的方法
关于如何以最简单的方式改进它,请提供帮助? 提前致谢!!!
希望这能奏效
string.split("/")[3]
它将return第三个正斜杠后的子字符串。
您似乎想在这里做一些 URL 解析。 JS 带来了少数 URL
实用程序,可以帮助您完成此任务和其他类似任务。
const myString = 'http://localhost:5000/contact-support';
const pathname = new URL(myString).pathname;
console.log(pathname); // outputs: /contact-support
// then you can also remove the first "/" character with `substring`
const whatIActuallyNeed = pathname.substring(1, pathname.length);
console.log(whatIActuallyNeed); // outputs: contact-support
您也可以使用 lastIndexOf('/')
,像这样:
string.substring(string.lastIndexOf('/') + 1);
另一种可能是正则表达式:
string.match(/[^\/]*\/\/[^\/]*\/(.*)/)[1];
请注意,您必须转义斜线,因为它是正则表达式中的分隔符。
string.substring(string.lastIndexOf('/')+1)
也可以完成这项工作。