假设我们有以下字符串:"test01,test02,test03,exceptional,case,test04"
我想要的是将字符串拆分为字符串数组,如下所示:["test01","test02","test03","exceptional,case","test04"]
如何用Java做到这一点?
最佳答案
这个负面的正则表达式正则表达式应该适合您:
(?<!exceptional),|,(?!case)
Working Demo
Java代码:
String[] arr = str.split("(?<!exceptional),|,(?!case)");
说明:
如果这两个条件中的任何一个满足,则此正则表达式匹配逗号:
exceptional
,在后面使用了负向后缀(?<!exceptional)
case
,使用负数超前(?!case)
当逗号被两侧的
exceptional
和case
包围时,这实际上不允许在逗号上进行拆分。