ひらがな・カタカナについて
- "ひらがな"とは、0x3041の"ぁ"から0x3096の"ゖ"とする
- "カタカナ"とは、0x30A1の"ァ"から0x30F6の"ヶ"とする
- 半角カタカナは無視
コード
extension String {
func katakana() -> String {
var str = ""
// 文字列を表現するUInt32
for c in unicodeScalars {
if c.value >= 0x3041 && c.value <= 0x3096 {
str.append(UnicodeScalar(c.value+96))
} else {
str.append(c)
}
}
return str
}
func hiragana() -> String {
var str = ""
for c in unicodeScalars {
if c.value >= 0x30A1 && c.value <= 0x30F6 {
str.append(UnicodeScalar(c.value-96))
} else {
str.append(c)
}
}
return str
}
}
var hoge = "ほげピヨ"
hoge.katakana() //"ホゲピヨ"
hoge.hiragana() //"ほげぴよ"