-1

假设我有以下字符串。

   tempEventStartDate = 9:30AM

我想要实现的是:

9:30在不同的字符串中。
AM在不同的字符串中。

我后来得到了这个代码 -

     tempEventStartDate.substring(tempEventStartDate.length()- 2);

但我有点困惑如何在不同的字符串中获得 9:30。

任何指针都会有所帮助。

4

6 回答 6

9
String newString = tempEventStartDate.substring(0,tempEventStartDate.length()- 2);
于 2013-06-20T11:26:16.763 回答
3

您可以使用replaceAll方法砍掉最后两个字符,如下所示:

String res = orig.replaceAll("..$", "");

这种方法甚至适用于少于两个字符的字符串。

于 2013-06-20T11:28:49.777 回答
1
String prevStr=tempEventStartDate.substring(0,tempEventStartDate.length()- 2);

String aftrStr=tempEventStartDate.substring(tempEventStartDate.length()- 2,tempEventStartDate.length());
于 2013-06-20T11:29:40.987 回答
0

你和Date以前一样吗?如果是,您可以跳过第一行

Date date = new SimpleDateFormat("hh:mmaa").parse(tempEventStartDate);
String time = new SimpleDateFormat("hh:mm").format(date);
String amOrPm = new SimpleDateFormat("aa").format(date);
于 2013-06-20T11:33:31.407 回答
0
String tempEventStartDate = "9:30AM";

String timeValue = tempEventStartDate.substring(0, tempEventStartDate.length() - 2);
String timeType = tempEventStartDate.substring(tempEventStartDate.length() - 2);
于 2013-06-20T11:30:50.980 回答
0

子字符串有两个重载函数

public String substring(int beginIndex)
public String substring(int beginIndex,int endIndex)

所以,你需要的字符串是

tempEventStartDate.substring(0,tempEventStartDate.length()- 2);
于 2013-06-20T11:29:57.863 回答