从 NSDateFormatterLongStyle 中删除格式化字符串的一部分

Remove some part of formatted string from NSDateFormatterLongStyle

当使用中文日期格式时,对于日期 Jan, 17, 2015,如果在中文语言环境中,使用 NSDateFormatterLongStyle,它将产生:

2015年1月17日

这很好,但是当我只想要这样的月份和年份时:

2015年1月

没有这样的预定义格式。

如果使用格式模板,模板将为 @"YYYY年MM月",但这对于日语等其他语言环境不可本地化。

有没有办法从所有语言环境的长样式格式中提取月份和年份?

游乐场测试:

let lc = "zh-cn";
var locale = NSLocale(localeIdentifier: lc);
var format = NSDateFormatter.dateFormatFromTemplate("yyyyMMM", 
    options: 0, locale: locale);
var formatter = NSDateFormatter();
formatter.dateFormat = format;
formatter.locale = locale;
formatter.stringFromDate(NSDate());

生产代码:

var format = NSDateFormatter.dateFormatFromTemplate("yyyyMMM", 
    options: 0, locale: nil);
var formatter = NSDateFormatter();
formatter.dateFormat = format;
let dateString = formatter.stringFromDate(NSDate());