[英]Eleminate a char in String java
我怎么能最后一个,|
在这个String
:
String model ="07:40,09:00,10:20,11:40,|09:00,10:20,11:40,|07:40,09:00,10:20,11:40,|10:20,11:40,|";
model是变量String
,结果应该是这样的:
String result="07:40,09:00,10:20,11:40,|09:00,10:20,11:40,|07:40,09:00,10:20,11:40,|10:20,11:40";
如果它总是,|
并且你不知道它是否会出现使用replaceFirst
:
model = model.replaceFirst(",\\|$", "");
PS $
代表String的结尾
String model ="07:40,09:00,10:20,11:40,|09:00,10:20,11:40,|07:40,09:00,10:20,11:40,|10:20,11:40,|";
String result = model.substring(0, model.length() -2);
System.out.println(result);
javadoc: substring(int beginIndex,int endIndex) :返回一个新字符串,它是该字符串的子字符串。
如果这总是出现,你可以剪掉字符串的末尾。 为此,您可以使用此代码:
result = model.substring(0, path.length() - 2);
如果它有时只发生,你可以这样做:
if (model.substring(path.length - 2, path.length).equals(",|")) {
result = model.substring(0, path.length() - 2);
} else {
result = model
}
尝试StringUtils :
import org.apache.commons.lang3.StringUtils;
// model = "07:40,09:00,10:20,11:40,|09:00,10:20,11:40,|07:40,09:00,10:20,11:40,|10:20,11:40,|"
model = StringUtils.removeEnd(model, ",|");
// Now
// model = "07:40,09:00,10:20,11:40,|09:00,10:20,11:40,|07:40,09:00,10:20,11:40,|10:20,11:40";
String correctedModel=new StringBuilder(model).deleteCharAt(model.lastIndexOf('|')).toString();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.