有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

正则表达式Java使用关键字拆分字符串

我在拆分以下字符串时遇到问题

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

我想知道结果

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

我不能用空格或圆点分开,有没有办法分开


共 (2) 个答案

  1. # 1 楼答案

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

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

    因为split函数的输入是一个正则表达式,所以可以提供各种定界

    对于你正在寻找的结果,要得到你想要的将是非常困难的,我能问一下,为什么你需要这样做

  2. # 2 楼答案

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

    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]