Regex 如果URL中主机名/端口后存在双斜杠,请删除为单斜杠

Regex 如果URL中主机名/端口后存在双斜杠,请删除为单斜杠,regex,mod-rewrite,Regex,Mod Rewrite,我有一个web应用程序,它接受从桌面应用程序上传的内容。在配置中,用户指定要上载到的服务器路径的URL 我的问题是,如果用户在URL配置中包含尾部斜杠,它最终会破坏发布功能。只有在主机名/端口后存在双斜杠时,我如何才能去掉它?出现这种情况的原因是我们在URL中编码特殊字符,包括前斜杠和反斜杠 例如,在桌面配置中 http://sub.company.com http://localhost:8888 http://sub.company.com/ http://localhost:8888

我有一个web应用程序,它接受从桌面应用程序上传的内容。在配置中,用户指定要上载到的服务器路径的URL

我的问题是,如果用户在URL配置中包含尾部斜杠,它最终会破坏发布功能。只有在主机名/端口后存在双斜杠时,我如何才能去掉它?出现这种情况的原因是我们在URL中编码特殊字符,包括前斜杠和反斜杠

例如,在桌面配置中

http://sub.company.com  
http://localhost:8888
http://sub.company.com/ 
http://localhost:8888/
我们有一个附加的RESTURL,所以上面要发布的url实际上是

http://sub.company.com/server/rest/publish --> Valid, no trailing slash in config
http://localhost:8888/server/rest/publish --> Valid
http://sub.company.com//server/rest/publish --> Returns a 404
http://localhost:8888//server/rest/publish -- Returns 404

是否有一个正则表达式可以去掉双斜杠并在主机名/端口后插入一个斜杠?

类似的内容将匹配在您要查找的位置有双斜杠的行

(https?://[^:]*[:0-9]*)//(.*)
然后可以将其替换为

\1/\2