比如现在有这样一个字符串“ A4,80列,三层,带双列线,二等分 白色 1200页/箱 ,10箱/包 ” 我需要把它分开处理,“A4,80列,三层,带双列线,二等分”作为产品的规格,“白色”作为产品的颜色,“1200页/箱 ,10箱/包”作为产品的包装,现在我想用正则表达式来匹配,但是不知道怎么取写,我只要能分开获取到,剩下的我就可以处理,现在就是分开获取的问题,不知道大家明白没有,按照固定格式是不可以的,因为数据格式不固定。如图所示,请问大家,如何可以获取到我想要分开处理的值。
yanse.deleteCharAt(yanse.length()-1);
guige.deleteCharAt(guige.length()-1);
baozhuang.deleteCharAt(baozhuang.length()-1);
你好,你这个减一为了什么呢???有颜色没有的情况下会报数组越界
去掉末尾的“,”,一个字符串“12345678,”长度为9,但是字符在字符串中的位置是从0开始的,所以最后一个字符“,”在字符串中的位置是字符串的长度减1,也就是9-1=8,确实,如果有某类没有的话会越界,那在删除最后一个字符之前加一个判断就行了,比如:
if(null != yanse && 0 < yanse.length()){
yanse.deleteCharAt(yanse.length()-1);
}
其他的也做相同的处理就行了
您的意思是,把每条数据的“,”全部替换为空格,然后空格分隔开,得到很多数组,再分别判断每个数组中有没有想要的数据,有的话就拼接成想要的字符串???? 是的,这样的话判断需要很多啊。
追答你的数据是分条的,在截取每一条的时候,换行符分割得到的,在执行这层循环的时候就要判断里面的颜色属性的index,颜色属性得到之后,其他的属性都能得到了。颜色属性都在中间,可采用二分法判断
现在已经分来了,分开之后呢,怎么再分开,颜色,规格,。。。。。谢谢
追答同样的办法,分开后的数组tem里不都是字符串吗,拿出来根据需要继续分呢