我有一个称为频率的变量,其值将为monthly-YYYY或Quarterly-YYYY-Q1或Annually-YYYY,此处YYYY是年份(2019)。我需要的是如果我具有Quarterly-YYYY-Q1的值替换为Quarterly-YYYY(Q1)。

有人可以帮忙这里可以使用的任何正则表达式模式吗?Q1也不固定,可以是Q1,Q2,Q3,Q4

if a="Quarterly-2019-Q2"
it should be replaced to
Quarterly-2019(Q1).
If anyother it should be as it is


在此寻求帮助。谢谢!

最佳答案

使用replace相当简单:



const str = "Quarterly-2019-Q2";
const re = /-Q(\d)/;

const res = str.replace(re, "(Q$1)");

console.log(res);





全字符串正则表达式:



const str = "Quarterly-2019-Q2";
const re = /Quarterly-(\d{4})-Q(\d)/;

const res = str.replace(re, "Quarterly-$1(Q$2)");

console.log(res);

10-06 15:13