【发布时间】:2016-08-12 12:11:35
【问题描述】:
我有这样的字符串路径
"/Math/Math1/Algerbra/node"
如何获取“/”和“/”之间出现的所有子字符串以获取(Math-Math1-Algerbra)
提前致谢
【问题讨论】:
我有这样的字符串路径
"/Math/Math1/Algerbra/node"
如何获取“/”和“/”之间出现的所有子字符串以获取(Math-Math1-Algerbra)
提前致谢
【问题讨论】:
我想您需要路径中的前 3 个目录。您可以在分隔符 "/" 上拆分并从结果中构建新字符串。显然,如果路径中没有足够的目录,您必须注意。
String s = "/Math/Math1/Algerbra/node";
String aux[] = s.split("/");
System.out.println(aux[1]+"-"+aux[2]+"-"+aux[3]);
刚刚找到更好的加入字符串的方法(java 1.8):
String.join("-", aux[1], aux[2], aux[3]);
【讨论】:
您可以使用 "a/b".split("/") 来接收包含 "a" 和 "b" 的数组。
您必须注意,因为您的第一个字符也是分隔符。另外:不要假设您知道返回数组的大小;人们经常出错并遇到 ArrayIndexOutOfBounds 异常,因为他们在访问数组元素之前懒得检查 result.length。
【讨论】: