有 Java 编程相关的问题?

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

java拆分非逗号分隔的字符串

我有一个连接两列值并返回字符串的查询,如下所示:

423545(50),7568787(50),53654656,2021947(50),

现在我需要处理括号中没有值的单个数字。我可以重新运行另一个查询来检索值,但我认为拆分现有字符串比进行另一个数据库调用更有效

如何拆分上述字符串以删除括号中的值?我想把数字存储在ArrayList中。 arrayList将包含423545756878753654656201947(不带逗号)

请注意,并非所有列都有括号内的值-请参见第三列 字符串末尾可能有一个逗号

我可以使用String.split()分割它,如果它只是用逗号,但我想上面的格式需要一个正则表达式


共 (3) 个答案

  1. # 1 楼答案

    首先用正则表达式删除所有括号及其值,然后在结果上拆分字符串

  2. # 3 楼答案

    String[] list = str.split("(\\(\\d+\\))?,");
    

    请参见this demo