首页 > 解决方案 > Javascript中的正则表达式提取和组设置如果日期之间的字符

问题描述

我有以下列表:

ID:26 09/21 17:03 13:47 13:14 06:57 09/22 18:01 13:47 13:13 07:00 09/23 17:46 14:12 13:35 07:17 09/24 16:15 13:17 12:45 07:08

我需要按日期提取和分组,例如:

09/21 17:03 13:47 13:14 06:57
09/22 18:01 13:47 13:13 07:00
09/23 17:46 14:12 13:35 07:17
09/24 16:15 13:17 12:45 07:08

我试过使用(\d+[/]\d+()),但它只提取日期,如:

09/21
09/22
09/23
09/24

然后尝试使用(\/[^:]+?.+?)\/以下结果进行分组

/21 17:03 13:47 13:14 06:57 09/
/23 17:46 14:12 13:35 07:17 09/

它缺少中间群体的地方

我只是在使用正则表达式,任何 heklp 都会受到高度赞赏!

标签: javascriptregexregex-group

解决方案


试试这个。

\d{2}\/\d{2}-> 这将匹配日期

(\s\d{2}:\d{2})+-> 这将匹配以下由空格分隔的时间

var str = 'ID:26 09/21 17:03 13:47 13:14 06:57 09/22 18:01 13:47 13:13 07:00 09/23 17:46 14:12 13:35 07:17 09/24 16:15 13:17 12:45 07:08';
var matches = str.match(/\d{2}\/\d{2}(\s\d{2}:\d{2})+/g);
console.log(matches)


推荐阅读