由于某种原因,我的多分隔符拆分无效。希望它只是一个语法错误。
这样可行,但我想在找到结束日期时拆分
String dateList[] = test.split("(?="+StartDate+")");
但事实并非如此。我错过了什么吗?
String dateList[] = text.split("[(?="+StartDate+")(?="+EndDate+")]");
答案 0 :(得分:2)
你不能使用" lookarounds"在自定义字符类中 - 它们只被解释为类的字符(如果检测到格式错误的范围,甚至可能无法正确编译模式,例如使用悬空的-
个字符)。
使用|
运算符在StartDate
和EndDate
之间切换。
类似的东西:
String dateList[] = text.split("(?="+StartDate+"|"+EndDate+")");
备注强>
Pattern.quote
,以防它们包含保留字符。 camelBack
,而不是CamelCase