正则表达式n字符到n个字符

时间:2015-07-25 10:50:13

标签: regex character regular-language

2015年7月25日上午5:45:40 ...我正在尝试返回&#34; 5:45:40 AM < /强>&#34;从使用正则表达式的字符串开始的时间,我刚刚在15分钟前了解了这种抽象语言。我真的很难过。我知道如何到达第一个到第n个字符的开头和最后的第n个字符,但不是n到n个字符。这甚至可能吗?你会认为它是类似的东西。({11},。{20} $) 谢谢。

2 个答案:

答案 0 :(得分:0)

您不能使用字符数,因为它可能会更改(例如,2015年12月25日有1个附加字符)。您可以将此模式与捕获组一起使用:

\d+\/\d+\/\d+\s(\d+:\d+:\d+\s(AM|PM))

第一次捕获将匹配您需要的子串(5:45:40 AM)

查看此example

答案 1 :(得分:0)

在这种情况下,按字符数计算是不正确的,因为日期部分的长度是可变的:8/1/2015只有8个字符长,而12/12/2015长度为10个字符。

最好匹配\d{1,2}:\d{2}:\d{2} (AM|PM)来捕获字符串的时间部分。

Demo.