使用空格作为分隔符

时间:2013-09-18 06:53:02

标签: java string

我正在尝试界定,和空格,我的输入为21, May, 2012,我的输出应为2012-May-21

String s = args[0];
String[] s1 = s.split(",\\s+");
System.out.print(s1[2] + "-" + s1[1] + "-" + s1[0]);

如果我只为,分隔符编写,但在尝试将空格作为分隔符时获取ArrayIndexOutOfBoundsException,则可以正常工作。

3 个答案:

答案 0 :(得分:6)

由于两个,,空格是可选的,如评论中所述..

String[] s1 = s.split(",|\\s+");

虽然我不会使用正则表达式来解析日期

 input=input.replaceAll("\\s*","");//remove any space if any
 java.util.Date date= (new SimpleDateFormat("dd,MMM,yyyy")).parse(input);
 String output=(new SimpleDateFormat("yyyy-MMM-dd")).format(date);

答案 1 :(得分:0)

您也可以使用String#replaceAll执行此操作:

 s.replaceAll(",\\s*", "-");

答案 2 :(得分:0)

试试这个,

    String date = " 21 , May, 2012";
    String[] s1 = date.split(",\\s*");
    System.out.println(s1[2].trim() + "-" + s1[1].trim() + "-" + s1[0].trim());