Linux路径为../../test/test/mydirectory/.....
我尝试使用此正则表达式删除所有../
[s{/././///}]
但这会删除所有特殊字符
我只想删除../../../../../
并保留真实路径
String result = path.replaceAll("[s{/././///}]","");
我希望正则表达式能够识别所有可能的../../../../
空父目录,而只保留真实路径名开始的真实目录
仅在字母开头的地方开始
答案 0 :(得分:1)
您可以使用
s.replaceFirst("^(?:\\.{2}/)+", "")
模式匹配
^
-字符串的开头(?:\\.{2}/)+
-一个或多个重复项:
\.{2}
-两个点/
-斜线。 .replaceFirst
将找到模式的第一个匹配项,并将其替换为空字符串。