【问题标题】:Split the string on forward slash在正斜杠上拆分字符串
【发布时间】:2014-09-04 04:10:40
【问题描述】:

我有一个代码,我想根据正斜杠“/”进行拆分。

每当我有一个基于“////”的正则表达式拆分时,它永远不会拆分并将整个字符串返回给我。 我尝试用给出“\”的文件分隔符替换,然后用“\\”进行分割,但不是下面的代码。

下面是测试的代码

package org.saurav.simpletests.string;

import java.io.File;

public class StringManipulator {

    public static void main(String a[]){
        String testString ="/UserId/XCode/deep";

        //testString = testString.replace("/", File.separator);
        //testString = testString.replace("/", "_");
        testSplitStrings(testString);
    }

    /**
     * Test the split string
     * @param path
     */
    public static void testSplitStrings(String path){
        System.out.println("splitting of sprint starts \n");
        String[] paths = path.split("////");
        for (int i = 0; i < paths.length; i++) {
            System.out.println("paths::"+i+" "+paths[i]+"\n");
        }
        System.out.println("splitting of sprint ends");
    }
}

干杯, 索拉夫

【问题讨论】:

  • '我有一个代码,我想根据反斜杠“/”进行拆分。' - 这是一个正斜杠。

标签: java string split


【解决方案1】:

我想以dd/mm/yyyy 格式检查输入日期的验证,因此需要将我的字符串拆分为/ 您可以通过以下方式完成:

String spl[]=str.split("/");
int date=Integer.parseInt(spl[0]);
int month=Integer.parseInt(spl[1]);
int year=Integer.parseInt(spl[2]);

【讨论】:

    【解决方案2】:

    Java 可能返回一个空指针,所以你需要用 try catch 包装它

    try {
            String[] temp = imageFilenameOriginal.split("/");
    
        } catch (Exception ex){
            errorMessage = ex.getMessage();
        }
    

    这样编译器会更开心。

    【讨论】:

    • 更快乐?呵呵,编译器不在乎
    【解决方案3】:
    String[] paths = path.split("\\");
    

    【讨论】:

    • 他们要求使用 forward 斜杠。
    【解决方案4】:

    无需转义正斜杠。如果您这样做,您的代码就可以正常工作:

    String[] paths = path.split("/");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-02
      • 2023-04-10
      • 1970-01-01
      • 2012-10-23
      • 1970-01-01
      • 1970-01-01
      • 2022-12-19
      • 2019-03-05
      相关资源
      最近更新 更多