我有一个字符串流,如5AA50100FF1837d437d437d40000我想拆分,例如,如果它包含0100FF18,则为37d4 37d4 37d4 0000如何操作我需要拆分流并对拆分后的流进行计算
dldeef671#
尝试如下操作:找到目标字符串后,使用index + target.length()查找所需字符串的开头,然后使用find查找每个四个字符的分组,并流式传输MatchResults,获取匹配的分组并作为数组返回,如果没有匹配的目标字符串,则数组为空。
index + target.length()
MatchResults
String target = "0100FF18"; String s = "5AA50100FF1837d437d437d40000"; String[] tokens = new String[0]; int index = 0; if ((index = s.indexOf(target)) >= 0) { tokens = Pattern.compile("....") .matcher(s.substring(index + target.length())).results() .map(MatchResult::group).toArray(String[]::new); } System.out.println(Arrays.toString(tokens));
印刷品
[37d4, 37d4, 37d4, 0000]
1条答案
按热度按时间dldeef671#
尝试如下操作:找到目标字符串后,使用
index + target.length()
查找所需字符串的开头,然后使用find查找每个四个字符的分组,并流式传输MatchResults
,获取匹配的分组并作为数组返回,如果没有匹配的目标字符串,则数组为空。印刷品