输入:
http://foo/bar/baz/../../qux/
期望的输出:
http://foo/qux/
这可以使用正则表达式来实现(除非有人可以提出更有效的替代方案)。
如果是前向查找,它会很简单:
/\.\.\/[^\/]+/
虽然我不熟悉如何向后查找第一个“/”(即不做/[a-z0-9-_]+\/\.\./
)。
我想到的解决方案之一是使用strrev
然后应用正则表达式向前查找(第一个示例),然后执行strrev
. 虽然我确信有一种更有效的方法。