Java Splitting String with keywords

时间:2012-10-09 17:47:19

标签: java regex string split

我在分割以下字符串方面遇到了问题。

String str = "eat big mac .at East MacDonald .from onwards";

我希望结果在

[ eat big mac, .at, East MacDonald, .from, onwards]

我不能用空格或点分割,有什么方法可以分成那个吗?

2 个答案:

答案 0 :(得分:3)

您可以使用特殊标记(或分隔符)包装关键字,然后使用此分隔符进行拆分:

String str = "eat big mac .at East MacDonald .from onwards";
String[] arr = str.replaceAll("(\\.\\w+)", "DELIMITER$1DELIMITER").split("DELIMITER");

这会产生输出:

[eat big mac , .at, East MacDonald , .from, onwards]

答案 1 :(得分:0)

您始终可以对您使用的每个字符串使用split()方法。

String str = "eat big mac .at East MacDonald .from onwards";
String[] spaceDelimitedStr = str.split(" ");
String[] dotDelimitedStr = str.split("\\.");
String[] commaDelimitedStr = str.split(",");

并且因为split函数的输入是正则表达式,所以您可以提供各种分隔

对于结果你正在寻找它很难得到你想要的东西,我可以问你为什么需要它的方式呢?