java:如何在空格和大写字母上拆分字符串?

时间:2017-08-21 14:21:46

标签: java string split

例如:"Today's food will be fish Tomorrow's food will be soup"

我想要一个包含

的字符串数组
{Today's food will be fish,Tomorrow's food will be soup}

我该如何做到这一点?

3 个答案:

答案 0 :(得分:1)

您可以使用此正则表达式(?=\s[A-Z])进行拆分,例如:

String str = "Today's food will be fish Tomorrow's food will be soup";
System.out.println(Arrays.toString(str.split("(?=\\s[A-Z])")));

输出

[Today's food will be fish,  Tomorrow's food will be soup]

答案 1 :(得分:1)

试试这个

String a="Today's food will be fish Tomorrow's food will be soup";
String[] b = a.split("\\s(?=[A-Z])");

和b是:[今天的食物将是鱼,明天的食物将是汤]

答案 2 :(得分:0)

为了支持国际字符,我建议使用以下表达式,建立在YCF_L:s的答案上。

String str = "Today's food will be fish Tomorrow's food will be soup";
System.out.println(Arrays.toString(str.split("(?=\\s\\p{Lu})")));