3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Kotlinで全角カタカナのバリデーションを作りたいから頑張った話

Posted at

こんにちは。私です。
Kotlin頑張ってます。

さて今回は

Kotlinで全角カタカナのバリデーション貼りたいなって思う時あるじゃないですか。
あったんですよ。

色々調べたのですが

validate_katakana.kt
public class FullKanaTest {
 
    public static void main(String[] args) {
        //true
        System.out.println("カタカナカナ" + isFullKana("カタカナカナ"));
        //false
        System.out.println("カタカナじゃないよ" + isFullKana("カタカナじゃないよ"));
    }
 
    public static boolean isFullKana(String str) {
        return Pattern.matches("^[ァ-ヶー]*$", str);
    }
}

/^([ァ-ン]|ー)+$/

の正規表現使えばできるよ!!ってめっちゃ書いてました。

いや、できん。

色々調べて使ってやってみたのですが、どうも理想の動きをしていない…。なんで…。。

これだ!!

regular_expression_katakana.kt
val katakana = "カタカナカナ"
if(katakana.matches("^[\\u30A0-\\u30FF]+$".toRegex())){
    //true
    //全てカタカナだった場合入ります
}else{
    //false
    //カタカナじゃない文字が含まれていたらこっち
}

と上記の書き方でやりたいことができました!やったね!!

まとめ

名前のフリガナとかで必要な場面は多いかと思います。
全角のカタカナのバリデーションがこっちで広まるといいな!

では!皆様良いValidationライフを٩( 'ω' )و

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?