我正在尝试修剪 java 中字符串格式的目录。我只想要图像/文件名,并且想删除图像之前的目录。
最佳答案
拆分
这个答案涵盖了正斜杠目录和反斜杠目录。
示例输入:
C:/hello/myAwesomeImage.png
C:\hello\myAwesomeImage.png
正斜杠
String [] myFile = "C:/hello/myAwesomeImage.png".split("/"); // split it
String myFileName = myFile[myFile.length - 1]; // Extract filename
反斜杠
String [] myFile = "C:\hello\myAwesomeImage.png".split("\\"); // split it
String myFileName = myFile[myFile.length - 1]; // Extract filename
输出:“myAwesomeImage.png”
或者,如果您不想拆分...
正则表达式
反斜杠+无扩展名
String myFile = "C:\\hello\\myAwesomeImage.png".matches("[ \\w-]+?(?=\\.)");
输出:“myAwesomeImage”
反斜杠+扩展名
String myFile = "C:\\hello\\myAwesomeImage.png".matches("[ \w-]+\....");
输出:“myAwesomeImage.png”
正斜杠 + 扩展名
String myFile = "C:/hello/myAwesomeImage.png".matches("[^\/]+(?=\.*$)");
输出:“myAwesomeImage.png”
正斜杠 + 无扩展名
String myFile = "C:/hello/myAwesomeImage.png".matches("[^\/]+(?=\..*$)");
输出:“myAwesomeImage”
关于java - 如何在java中修剪String目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59787198/