gpt4 book ai didi

Javascript 从字符串中提取正则表达式

转载 作者:行者123 更新时间:2023-11-30 11:36:05 24 4
gpt4 key购买 nike

我已经尝试了几种方法来做到这一点,但我不明白为什么我的 .match 总是返回 null。鉴于下面的字符串,我如何将 04-Jun-2017 提取到它自己的变量中?

var str = "I need the only the    date 04-Jun-2017\n"

str.replace(/\n/g,' ');
var date = str.match(/^[01][0-9]-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-\d{4}$/);
alert(date)

最佳答案

首先,str.replace(/\n/g,' '); 不会修改 str var,因为字符串是不可变的。然后,您不需要 anchor ^$,因为日期在字符串内部,它不等于字符串本身。此外,您需要匹配从 131 的日期,但是 [01][0-9] 只匹配从 0019

你可以考虑使用

var str = "I need the only the    date 04-Jun-2017\n"
var date = str.match(/\b\d{1,2}-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-\d{4}\b/i);
if (date) {
console.log(date[0]);
}

anchor 替换为单词边界 \b 并且日期部分更改为 \d{1,2} 匹配任何 1 位或 2 位数字。 i 修饰符将使模式不区分大小写。

关于Javascript 从字符串中提取正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44359610/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com