我目前正在用C++编写日期格式库.例如.该库接收格式化字符串,例如:dddd, mmmm d, dddd yyyy并生成Tuesday, December 26, Tuesday 2016给定年份的结果:2016年,月份:12,日期:26(dddd代表工作日,d代表数字的日期,mmmm代表月份,yyyy代表年份).
我想通过使用来实现这一目标boost::regex_replace.
在javascript我可以很容易地做实现这一目标:
var pattern = 'dddd, mmmm d, yyyy';
pattern.replace(/(dddd)|(d)|(mmmm)|(yyyy)/gi, function (dddd, d, mmmm, yyyy){
if (dddd) {
return 'Tuesday';
}
if (d) {
return '26'
}
if (mmmm) {
return 'December';
}
if (yyyy) {
return '2016';
}
return '';
}
Run Code Online (Sandbox Code Playgroud)
boost::regex regex1("(dddd)");
boost::regex regex2("(d)");
boost::regex regex3("(mmmm)");
boost::regex regex4("(yyyy)");
boost::smatch …Run Code Online (Sandbox Code Playgroud)