チュートリアル
値が半角英数字だけの構成であるかどうかを確認するための方法について説明します。
半角英字、半角数字を判定する場合のサンプルをご紹介します。
メソッド概要
引数で渡された値の属性チェック(半角英数字)を行う。
引数の文字列がすべて半角英数である場合はtrue/左記以外はfalseを返却します。
※nullはfalseとして返却します。
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
package sample.code; public class StringCheker01 { //半角英数字の正規表現 private static final String JUDG_STRING = "^[0-9a-zA-Z]+$"; /** * 半角英数字チェック * * 指定した文字列が全て半角英数字であるか否かをチェックします * ※nullはfalse判定されます * * @param str チェック対象の文字列 * @return true:全て半角英数字 false:半角英数字以外の文字が含まれている */ public static boolean isHalfAlphanumeric(String str) { return (str == null)? false : str.matches(JUDG_STRING); } } |
テストコード(JUnit)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
package sample.test; import static org.junit.jupiter.api.Assertions.*; import org.junit.jupiter.api.Test; import sample.code.StringCheker01; class StringChecker01Test { @Test void test01() { // null assertFalse(StringCheker01.isHalfAlphanumeric(null)); } @Test void test02() { // 空文字 assertFalse(StringCheker01.isHalfAlphanumeric("")); } @Test void test03() { // 半角英字 assertTrue(StringCheker01.isHalfAlphanumeric("abc")); } @Test void test04() { // 半角数字 assertTrue(StringCheker01.isHalfAlphanumeric("123")); } @Test void test05() { // 全角英字 assertFalse(StringCheker01.isHalfAlphanumeric("abc")); } @Test void test06() { // 全角数字 assertFalse(StringCheker01.isHalfAlphanumeric("123")); } @Test void test07() { // ひらがな assertFalse(StringCheker01.isHalfAlphanumeric("あいう")); } @Test void test08() { // カタカナ assertFalse(StringCheker01.isHalfAlphanumeric("アイウ")); } @Test void test09() { // 半角カタカナ assertFalse(StringCheker01.isHalfAlphanumeric("アイウ")); } @Test void test10() { // 記号 assertFalse(StringCheker01.isHalfAlphanumeric("!()&%")); } @Test void test11() { // 半角英数字 assertTrue(StringCheker01.isHalfAlphanumeric("123abc")); } } |