【问题标题】:Regex expression to match the case AM/PM of time "12:30PM"正则表达式匹配时间“12:30PM”的大小写 AM/PM
【发布时间】:2014-04-30 12:09:18
【问题描述】:

这里我有一个格式为 hh:mma 的时间。 AM/PM 不使用带时间的空格分隔。现在如何使用正则表达式获取 AM/PM 和使用 javascript 的时间。

【问题讨论】:

  • 你有一个只包含那个时间格式的字符串还是包含更多内容的字符串?
  • Regex for AM PM time format for jquery 的可能副本,它不使用 jQuery。
  • 字符串仅包含时间格式“12:30AM”,时间和 AM/PM 之间没有空格。如何使用正则表达式获取小时、分钟、上午/下午

标签: javascript regex


【解决方案1】:

您不需要正则表达式来“获取”值:

var time = "12:30PM",
    suffix = time.substr(-2),
    numbers = time.substr(0, time.length-2);

结果:

console.log(suffix);  // "PM"
console.log(numbers); // "12:30"

如果您想将小时/分钟放在单独的变量中:

var temp = numbers.split(':'),
    hours = parseInt(temp[0], 10),   // 12
    minutes = parseInt(temp[1], 10); // 30

【讨论】:

  • 如何分别获取小时和分钟
  • 你能把它全部给吗? ,10 是干什么用的
  • “全力以赴”10parseInt 的基数参数,这确保第一个参数被解释为十进制数。
  • 否,.substr(-2) 返回该字符串的最后 2 个字符。在这种情况下,"PM";
  • 所以它不同于子串方法
猜你喜欢
  • 2016-11-04
  • 2021-02-24
  • 1970-01-01
  • 2012-02-07
  • 1970-01-01
  • 2018-04-07
  • 2010-11-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多