获取Java String的每个部分

时间:2014-03-19 12:45:38

标签: java

大家好,我是Java的新手,我想自己接受这个挑战,因为我是新手,我需要你的帮助。

我有一个像这样的Java字符串:

String strTime =" 8:44 PM&#34 ;;

我想得到hr,min和am / pm .. 我怎样才能做到这一点?我还在想小时是2位数吗?还有什么我应该考虑的?谢谢你的帮助。

更新:

  String[] parts[] = strTime.split(":");
  String strHr = parts[0];
  String strMin = parts[1];
  String strAM = parts[2];

但我不知道如何捕捉对方像空间一样分裂等。

4 个答案:

答案 0 :(得分:0)

你正在做的事情非常低效,但这是一个硬编码的解决方案:

String[] fistPart = strTime.split(":");
String strHr = firstPart[0];
String[] secondPart = firstPart[1].split(" ");
String strMin = secondPart[0];
String strAM = secondPart[1];

我也建议看看正则表达式。

答案 1 :(得分:0)

试试这段代码:

    String strTime = "8:44 PM";
    String[] parts = strTime.split(":");
    String strHr = parts[0];
    String rest = parts[1];
    String[] rest2 = rest.split(" ");
    String strMin = rest2[0];
    String strAM = rest2[1];

在可变部分中,您将有两个字符串:

8 // strHr
44 PM // rest

然后;在休息时你会有:

44 // strMin
PM // strAM

答案 2 :(得分:0)

你可以这样做: -

String[] fistPart = strTime.split(" ");
String time = firstPart[0];
String strAM = firstPart[1];
String strHr = time.split(":")[0];
String strMin = time.split(":")[1];


8:44  PM
------------
Time| AM/PM

8:44
----
H|Min

答案 3 :(得分:0)

首先,您必须设置一个固定时间格式,它应该是2位数或1位数。比如时间是上午08:44或上午8:44。

我认为你选择2位数的时间格式进行响应式编程。

然后你把logoc从时间格式中提取时间。

然后遵循以下代码

String strTime =“8:44 PM”;
String hour = strTime.split(“:”)[0];
String remaining = strTime.split(“:”)[1];
String min = remain.split(“”)[0];
String am_pm = remain.split(“:”)[1];