Java : 基于 2 个分隔符的正则表达式 split()

Java : regex split() based on 2 delimiters

我想在 space 后跟逗号时拆分字符串。

我的输入字符串:

go back, to work !  ,2012-10-01 07:01:45,,  1

预期输出:

"go back, to work !"    
"2012-10-01 07:01:45,,1"

我试过的代码:

String[] b1=a1.split("[\s,]");

但这只根据白色space分割字符串。当同时存在白色 space 和逗号时,我想拆分它,而不仅仅是其中之一。我该怎么办?

拆分 space 后跟逗号:

String[] b1 = a1.split("\s,");

[\s,] 是一个字符 class,它将在 space 或逗号处拆分。

拆分 space 后跟逗号 ("\s,") 不会给你想要的

输出
"go back, to work !"

"2012-10-01 07:01:45"

1

输出将是

go back, to work !

2012-10-01 07:01:45,, 1

您可以使用逗号后接 space 或 space 后接逗号使用 "\s,|,\s" 然后您将得到以下输出

go back

to work !

2012-10-01 07:01:45,

1

但是还是和你想要的不一样。您可能想澄清您的要求。

当出现白色 space 时使用它来拆分字符串,然后出现逗号。

String[] b1 = a1.split(" ,");