【问题标题】:How to separate string using by commas in multicomma line如何在多逗号行中使用逗号分隔字符串
【发布时间】:2020-02-17 06:40:19
【问题描述】:

对于单独的 (test(1,2) , test(3,4)) 作为 test(1,2) 和 test(3,4),我应该怎么做。我可以在这里使用什么而不是 x 作为分隔符值?谢谢

    StringTokenizer tokenizer = new StringTokenizer(str, "x");

【问题讨论】:

  • 不要使用这样的代码。多个 Java 版本已弃用 StringTokenizer。使用 Java 的新选项/功能
  • 用户 String.split() 代替。您可以在那里提供一个正则表达式来完成这项工作。另外,这是一个简化的例子吗? test 可以有两个以上的参数吗?嵌套测试?如果是这样,您可能想改用解析器。
  • @Pavel Smirnov 我不会有超过 2 个参数。将是 test(4,5) , test2(6,7) , test3( 78,63) test4(.....
  • 请看一下:baeldung.com/java-split-string 如果还有什么不清楚的,欢迎提问。

标签: java stringtokenizer


【解决方案1】:

改用String.split()

String s = "test(1,2), test2(4,5), test3(2,3)";
String[] arr = s.split("(?<=\\w*[(]\\d,\\d[)]),");
System.out.println(Arrays.toString(arr));

输出:

[test(1,2),  test2(4,5),  test3(2,3)]

【讨论】:

    【解决方案2】:

    试试这个:-

        String s = "(test(1,2) , test(3,4))";
        s=s.substring(1).substring(0,s.length()-2);
        String[] arr = s.split(" ,");
        System.out.println(arr[0].trim());
        System.out.println(arr[1].trim());
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-24
      • 2016-04-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多