String prop="AS=AP:BS=BP:CS=CS:DS=DPS:";
String currentValue="AS"
我有上面的字符串值(prop),我希望根据String值(currentValue)拆分String并打印Equal和Colon符号之间的值。
所以我使用下面的代码来实现这一点,但是它没有用于最后一个字符串值" DSP"因为它的长度是3
System.out.println(prop.substring((prop.indexOf(geo)+3), (prop.indexOf(geo)+5)));
我是一名Unix工程师使用awk
在UNIX脚本中实现这一点,有没有办法在JAVA中实现这一点?
更新:下面的代码工作正常,但是当两个值相等时失败,如AS = AS:BS = BS:CS = CP:DS = DPS:当currentValue为AS / BS时失败
String subStr=prop.split(currentValue)[1];
System.out.println(subStr.substring(subStr.indexOf("=")+1,subStr.indexOf(":")));
答案 0 :(得分:1)
你在寻找这种解决方案吗?
String prop="AS=AP:BS=BP:CS=CP:DS=DPS:";
String currentValue="AS";
String subStr=prop.split(currentValue)[1];
System.out.println(subStr.substring(subStr.indexOf("=")+1,subStr.indexOf(":")));