如何在java中拆分字符串并包含分隔符
我想使用分隔符“AAAA”拆分这个字符串“ahhhaaartfuhlaaaaahv”,并将其保存到包含分隔符的数组中。(所需输出:[AHHHA、AAAA、RTFUHLA、AAAA、HV])。我有以下代码,但输出与我想要的输出不一样
String y = "AHHHAAAAARTFUHLAAAAAHV";
System.out.println(Arrays.toString(y.split("((?<=AAAA)|(?=AAAA))")));
输出: [AHHH,A,AAA,A,RTFUHL,A,AAA,A,HV]
# 1 楼答案
你可以使用^{}
(?=AAAA[^A]
:向前看以匹配AAAA
和非A
字符|
:或(?<=AAAA(?=[^A])))
:正向向后看,将AAAA
与向前看匹配,以确保没有A
字符输出: