84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
我有一部分String 数据格式是这样的
{value=加大 +$5},{value=加加大 +$10},{value=加加加大 +$15}
我想把
加大、加加大、加加加大 存进去 Arraylist name.
$5、$10、$15 存进去 Arraylist price.
请教大神们如何实现这种数据转型?
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
public class test { public static void main(String[] args) { String str = "{value=加大 +$5},{value=加加大 +$10},{value=加加加大 +$15}"; test(str); } public static void test(String str) { List name = new ArrayList(); List price = new ArrayList(); String[] data = str.split(","); for (int i = 0; i
可以用正则表达式
class Untitled { public static void main(String[] args) { String target = "{value=加大 +$5},{value=加加大 +$10},{value=加加加大 +$15}"; String valueRegex = "[\\u4e00-\\u9fa5]+";//匹配汉字 String numberRegex = "\\$\\d+";//匹配"$数字" Pattern pattern = Pattern.compile(valueRegex); Matcher m = pattern.matcher(target); List valueResult = new ArrayList(); while(m.find()){ valueResult.add(m.group()); } pattern = Pattern.compile(numberRegex); m = pattern.matcher(target); List numberResult = new ArrayList(); while(m.find()){ numberResult.add(m.group()); } System.out.println(valueResult); System.out.println(numberResult); } }
输出结果
[加大, 加加大, 加加加大] [$5, $10, $15]
可以用正则表达式
输出结果