如何在java中切片字符串?我从 csv 和 xls 中获取行,例如单元格中的数据就像
14.015_奥迪
我怎么能说 java 它必须在 _ 之前只看一部分?所以在操作之后我必须有 14.015。在rails中我会用gsub来做这个,但是在java中怎么做呢?
您可以使用String#split
:
String s = "14.015_AUDI";
String[] parts = s.split("_"); //returns an array with the 2 parts
String firstPart = parts[0]; //14.015
您应该添加错误检查(例如,数组的大小符合预期)
而不是创建一个新列表并具有两次副本的拆分,我会使用子字符串,它适用于原始字符串并且不会创建新字符串
String s = "14.015_AUDI";
String firstPart = s.substring(0, s.indexOf("_"));
String str = "14.015_AUDI";
String [] parts = str.split("_");
String numberPart = parts[0];
String audi = parts[1];
应该更短:
"14.015_AUDI".split("_")[0];
番石榴有分离器
List<String> pieces = Splitter.on("_").splitToList("14.015_AUDI");
String numberPart = parts.get(0);
String audi = parts.get(1);