我有一个字符串,我使用String.split(regex)最终得到一个字符串[]。
字符串格式为
January,WEEKDAY,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,AJanuary,WEEKEND,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,B,B,BJanuary,HOLIDAY,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,C,C,CFebruary,WEEKDAY,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,AFebruary,WEEKEND,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,B,B,BFebruary,HOLIDAY,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,AMarch,WEEKDAY,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,C,C,C
分割后的第一个字符串应为
January,WEEKDAY,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A
所以我认为我需要在A,B或C之间进行拆分,而不是a,
为了测试第一个,我尝试制作我的正则表达式"(?<!,)A,"
,但这不起作用
有什么想法吗?
答案 0 :(得分:1)
您似乎正在寻找以下内容:
String[] parts = s.split("(?<=,[ABC](?!,))");
或者你也可以在这里使用单词/非单词边界:
String[] parts = s.split("(?<=\\b[ABC]\\B)");
答案 1 :(得分:0)
您也可以使用(?<=,[ABC])(?=[^,])
进行拆分。