Extension での実装方法。String クラスに hiragana, katakana のメソッドが追加されます。
extension String { func katakana() -> String { var str = "" 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 } }