当字符串匹配时,如何在行尾获取下一个字符串

时间:2016-12-09 18:18:29

标签: regex

我正在阅读PDF文件。在PDF文件的一页中,我想从此字符串行中获取日期"插图截至:2016年12月9日"。我可以搜索"插图:"使用正则表达式。但我怎么不能得到约会。我需要返回正则表达式的结果。我不需要返回我搜索的相同字符串。

i tried this but it only return me Illustration as of :

const regex = /Illustration as of:/g;
const str = `Illustration as of: December 9, 2016`;
let m;

while ((m = regex.exec(str)) !== null) {
    // This is necessary to avoid infinite loops with zero-width matches
    if (m.index === regex.lastIndex) {
        regex.lastIndex++;
    }
    // The result can be accessed through the `m`-variable.
    m.forEach((match, groupIndex) => {
        console.log(`Found match, group ${groupIndex}: ${match}`);
    });
}

我只需要在2016年12月9日返回此结果

2 个答案:

答案 0 :(得分:0)

const regex = /Illustration as of:+([^\n]+)/g;

尝试这个我希望它会回到你的日期。它将在匹配后返回字符串的结尾。

答案 1 :(得分:0)

(?:Illustration as of:\s?)(January|February|March|May|June|July|August|Septembe‌​r|October|November|D‌​ecember) \d{1,2},\s?\d{4}(?:Illustration as of:\s?).+$