茶漬けの技術メモ

Golang, Rubyで趣味開発します。テックニュース書いたり。ガジェット触ったり。

Swiftで半角英数字の判定


Stringで半角英数字かどうか判定したい場合
まずはStringを拡張(extension)する

extension String {
 func isAlphanumeric() -> Bool {
   return NSPredicate(format: “SELF MATCHES %@“, “[a-zA-Z0-9]+“).evaluate(with: self)
 }
}


使ってみる。

let strings:[String] = [“あいうえお“, “iceColdNakuNaku486”, “983-+?“]
for str in strings {
     if str.isAlphanumeric() {
       print("半角英数字だよ")
     } else {
       print("半角英数字じゃないんかい")
     }
   }


実行結果

半角英数字じゃないんかい
半角英数字だよ
半角英数字じゃないんかい