swift – 数値のカンマ区切り(数値のフォーマット)

金額表示でよく使う¥ 1,999 こんな文字列
金額の表示とかで結構使用頻度高いと思います。
動作環境
環境 | バージョン |
---|---|
Xcode | 9.4.1 |
iOS | 11.4 |
swift | 4.1.2 |
NumberFormatterを使用
数値のフォーマットにはNumberFormatterを使用します。
let formatter: NumberFormatter = NumberFormatter()
// スタイルを指定
formatter.numberStyle = .decimal
// 数値の区切り文字を指定する
formatter.groupingSeparator = ","
// 何桁ごとに区切り文字を入れるか指定する
formatter.groupingSize = 3
// 123456をフォーマットする
var priceStr: String = formatter.string(from: NSNumber.init(integerLiteral: 123456))!
print("¥" + priceStr)
// 出力 : ¥123,456
// 1234567をフォーマットする
priceStr = formatter.string(from: NSNumber.init(integerLiteral: 1234567))!
print("¥" + priceStr)
// 出力 ¥1,234,567
[amazon_link asins=’4797394188′ template=’custom’ store=’takayuki57101-22′ marketplace=’JP’ link_id=’3a5a758e-aec4-11e8-830e-075bad3cc10f’]