如何在javascript或jquery中检查字符串是否包含时间表达式?

如何在javascript或jquery中检查字符串是否包含时间表达式?,javascript,jquery,Javascript,Jquery,我想做一个像谷歌cal一样的caldendar 在谷歌日历中,当键入“2pm晚餐”或“2:00pm晚餐”或“14:00pm晚餐”时,系统可以告知输入的时间,并呈现从该时间开始的事件 此外,如果我键入“2pm-3pm晚餐”或“14:00-15:00晚餐”,系统可以知道活动的时间长度 所以我的问题是,如何使用javascript或jquery构造一个函数来过滤出开始时间和长度?使用regex例如: /(\d+)(下午|上午)/下午2点晚餐的那种形式。。。 /(\d+)(pm | am)-(\d+)(

我想做一个像谷歌cal一样的caldendar

在谷歌日历中,当键入“2pm晚餐”“2:00pm晚餐”“14:00pm晚餐”时,系统可以告知输入的时间,并呈现从该时间开始的事件

此外,如果我键入“2pm-3pm晚餐”“14:00-15:00晚餐”,系统可以知道活动的时间长度

所以我的问题是,如何使用javascript或jquery构造一个函数来过滤出开始时间和长度?

使用regex例如:
/(\d+)(下午|上午)/
下午2点晚餐的那种形式。。。
/(\d+)(pm | am)-(\d+)(pm | am)/
用于下午2点到下午3点的格式

str.match(regex)
将为您提供regex中捕获部分的数组 例如
“下午2点到3点的晚餐”。配对(/(\d+)(下午4点)-(\d+)(下午4点)/
将为您提供
[“下午2点到3点”、“下午2点”、“下午3点”、“下午3点”]

您可能可以使用indexOf来检查特定的内容。在这方面你可以非常聪明,例如,如果有冒号,你知道时间是特定的,如果有破折号,你知道可能有一个范围。非常感谢你的时间!这正好解决了我的问题!