【问题标题】:Java Split DelimiterJava 拆分分隔符
【发布时间】:2012-11-07 19:14:18
【问题描述】:

如果我想有一个可以用分隔符分隔的分隔符//,我该如何实现呢?

例如:

String str="i have a ball // do i /g f y"

我希望分隔符为"//",因此结果将是:

"do i /g f y"

【问题讨论】:

标签: java string split


【解决方案1】:

字符串"//"可以直接用作分隔符,不需要转义:

String[] data = str.split("//");

"\\" 会出现不同的情况,'\' 字符在正则表达式中用作转义字符,而需要通过在其前面放置另一个 '\' 来对其进行转义:

String[] data = str.split("\\\\");

【讨论】:

    【解决方案2】:

    如果您只需要尾巴,正如您在问题中指定的那样,那么您不需要拆分,而是:

    result = str.substring(str.indexOf("//") + 2); 
    

    【讨论】:

      【解决方案3】:

      代码:

          String testString = "dog//cat//meow/ok";
      
          String[] tokens = testString.split("//");
          for(String token: tokens){
              System.out.println(token);
          }
      

      输出:

      dog
      cat
      meow/ok
      

      【讨论】:

        【解决方案4】:
        theString.split( "//" );
        

        http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#split(java.lang.String)

        由于 arg 是一个正则表达式,它可能需要一些转义,但这应该可以。

        【讨论】:

          【解决方案5】:

          这里不需要转义,因为代码的字符串带有“//”反斜杠而不是“\”正斜杠。

          这里的代码可以正常工作:

          String str="i have a ball // do i /g f y";
              String ss[]=str.split("//");
              System.out.println(ss[0]);
              System.out.println(ss[1]);
          

          输出:

          我有一个球

          做我/g f y

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2012-01-10
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-12-17
            • 2012-02-27
            • 1970-01-01
            相关资源
            最近更新 更多