【发布时间】:2019-09-03 20:00:27
【问题描述】:
当前删除多个斜杠的代码是
path = path.replaceAll("/{2,}", "/");
这会将https://stackoverflow.com 转换为 https:/stackoverflow.com,这不是有意的。
我做了一些研究,并提出了否定的后视方法来忽略之前有 https: 的双斜杠,但它只匹配 双斜杠,而不是三斜杠或更多:
(?<!http\/\/)
我想如果你可以否定一个'sub'正则表达式,它可能是这样的,意思是匹配(双或更多斜杠)但不匹配2个带有https:的斜杠。
\/{2,}.negate(https:(?=\/\/))
这可能吗?
【问题讨论】:
标签: java regex http https slash