繁体   English   中英

仅用两个正斜杠替换任意数量的正斜杠

[英]Replace any number of forward slashes with just two forward slashes

我正在使用类型脚本处理angular 2。 我在html上有一个输入框,它接受输入,然后根据该输入框进行搜索。 用户还可以在搜索中输入休息资源,例如employee / getDetail。

我想将//替换为//,以便我的服务不会失败。 还请注意,即使用户输入了employee /////// getDetail ////// salary,它也应该返回employee / getDetail / salary

将斜杠替换为两个的想法,如果用户输入两个以上,那么我们应该只有两个

我可以在ui本身中转义这些吗?

谢谢,Ashish

用单个正斜杠替换模式/{2,} 这将删除重复项,但不会影响仅(正确)使用了一个正斜杠的实例。

 var input = "employee///////getDetail//////salary"; console.log(input.replace(/\\/{2,}/g, "/")); 

如果您确实希望在替换中使用两个正斜杠,请使用以下命令:

input.replace(/\/+/g, "//")

您可以为正斜杠的匹配创建一个正则表达式,并使用String.prototype.replace方法用2个正斜杠替换1个或多个正斜杠,如以下示例所示。

 var forwardSlash = /\\/+/g; var input = "employee///////getDetail//////salary"; console.log(input.replace(forwardSlash, "//")); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM