Java—提取字符串中指定的字符(取井号间的字符)
一、内容介绍:
有一字符串,格式为:“#detailOne#detailTwo#detailThree#”,现需要将“#”间的内容1、内容2和内容3分别提取出来,赋给detailOne、detailTwo和detailThree,其中内容1、内容2和内容3均可能为空(如:内容1为空,则字符串为:“##detailTwo#detailThree#”),且内容长度不确定。
二、思路:
字符串“#内容1#内容2#内容3#”,先去掉字符串两侧的井号,然后再按井号分隔。
三、实现代码
private static final String Jinghao_SEPERATOR = "#";
public List separatedByJinghao(String str){
List result = new ArrayList(3);
// 预处理,去掉字段中的第一个井号和最后一个井号
String tempStr = str.substring(str.indexOf(Jinghao_SEPERATOR) + 1,
str.lastIndexOf(Jinghao_SEPERATOR));
int firstJinghao = tempStr.indexOf(Jinghao_SEPERATOR);
int lastJinghao = tempStr.lastIndexOf(Jinghao_SEPERATOR);
// 分离出的内容1
String detailOne = null;
if (firstJinghao == 0 || tempStr.substring(0, firstJinghao).equals("0")){
detailOne = "";
}else {
detailOne = tempStr.substring(0, firstJinghao);
}
// 分离出的内容2和内容3
String detailTwo = tempStr.substring(firstJinghao + 1, lastJinghao);
String detailThree = tempStr.substring(lastJinghao + 1);
result.add(detailOne);
result.add(detailTwo);
result.add(detailThree);
return result;
}
四、总结
由于有的内容可能为“”,目前想到这种最直接粗暴的方法,应该还有更好的方法,想到会修改补充到上面。文章来源:https://www.toymoban.com/news/detail-404753.html
希望有更好的方法可以分享给我…一起讨论…文章来源地址https://www.toymoban.com/news/detail-404753.html
到了这里,关于Java—提取字符串中指定的字符(取井号间的字符)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!