我有一个从URL动态获取的字符串,如下所示
链接文本:"MD工作表模板v4.4.0 2023 11 01(请分享)">
从上面的文本中,我想得到以下内容。1. Version
- v4.4.0
2. Date
- 2023 11 01
我试过了
let text = "MD Sheet Template v4.4.0 2023 11 01 (please share then)";
let version;
let date;
version = text.match(/.(.*?)v3/i);
console.log('version', version); // null
date = text.match(/.(.*?)20/i);
console.log('date', date); // null
如何解决这个问题?
const txt="MD Sheet Template v4.4.0 2023 11 01 (please share then)";
const [rev,date]=txt.match(/s+(v.+?)s+(.+?)s+(/).slice(1);
console.log("revision",rev);
console.log("date", date);
regexp要求修订字符串以"v"开头。需要在至少一个空格字符之前(s+
),并且在至少一个其他空格字符之后紧跟着日期。然后,日期由另一个空白字符组(至少一个字符)限制,后面紧跟着一个左括号((
)。为两种模式使用一个组合的regexp使其更加可靠,因为强制执行了特定的顺序。