如果我有以下任何路径
../../../filename.txt
../../filename.txt
../filename.txt
如何用一个'../'代替任何数量的'../',例如
../../../filename.txt
or
../../filename.txt
变为
../filename.txt
然而,这些路径位于一个css字符串中,我不想将字符串分开来执行此操作,我只想将'../'替换为它们。
由于
答案 0 :(得分:4)
如果您记得逃离时期,preg_replace
应该很容易:
$result = preg_replace('~(?:\.\./)+~', '../', $input);
匹配../
的一个或多个连续出现,只需回写../
。
答案 1 :(得分:2)
使用正则表达式
(\.\./)+
并将其替换为
../
+
匹配前一个字符或第1组到多次
答案 2 :(得分:0)