查找字符串中不同日期的数量

时间:2018-04-01 10:49:43

标签: regex

我陷入了一个问题。包含DD-MM-YYYY格式的一些日期的段落,在段落中查找不同年份的数量。可以使用正则表达式解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

日期var regex = /(?:(?:[0-2][0-9]|[3][01])-(?:[0][13578]|[1][02])|(?:[0-2][0-9]|30)-(?:[0][469]|11)|(?:[0-2][0-9])-02)-[0-9]{4}/g;的正则表达式。

上述正则表达式无法与闰年相匹敌。

要在JS中查找pargraph中的日期计数

function dateCount(input){
    const regex = /(?:(?:[0-2][0-9]|[3][01])-(?:[0][13578]|[1][02])|(?:[0-2][0-9]|30)-(?:[0][469]|11)|(?:[0-2][0-9])-02)-[0-9]{4}/g;
    let m;
    var noDates= 0; 
    while ((match = regex.exec(input)) !== null) {
        dateCounter++; 
//This is to prevent from running into infinite loop
        if (match.index === regex.lastIndex) {
            regex.lastIndex++;
        }
    }
    console.log(dateCounter);
}