チュートリアル
値が半角英字文字だけの構成であるかどうかを確認するための方法について説明します。
大文字、小文字、どちらも含む場合のサンプルをご紹介します。
メソッド概要
引数で渡された値の属性チェック(半角英字)を行う。
引数の文字列がすべて半角英字である場合はtrue/左記以外はfalseを返却します。
以下の3種類を実装しています。
- 半角英字のみで構成されているか(大文字小文字問わず)
- 半角英字のみで構成されているか(小文字のみ)
- 半角英字のみで構成されているか(大文字のみ)
※nullはfalseとして返却します。
サンプルコード
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 |
package sample.code; public class StringCheker04 { //半角英字の正規表現(大文字小文字) private static final String ALPH_STRING = "^[a-zA-Z]+$"; //半角英字の正規表現(大文字小文字) private static final String SMALL_ALPH_STRING = "^[a-z]+$"; //半角英字の正規表現(大文字小文字) private static final String BIG_ALPH_STRING = "^[A-Z]+$"; /** * 半角英字チェック * * 指定した文字列が全て半角英字であるか否かをチェックします * ※nullはfalse判定されます * * @param str チェック対象の文字列 * @return true:全て半角英字 false:半角英字以外の文字が含まれている */ public static boolean isHalfAlpha(String str) { return judge(str, ALPH_STRING); } /** * 半角英字チェック(小文字) * * 指定した文字列が全て半角英字(小文字)であるか否かをチェックします * ※nullはfalse判定されます * * @param str チェック対象の文字列 * @return true:全て半角英字(小文字) false:半角英字(小文字)以外の文字が含まれている */ public static boolean isHalfSmallAlpha(String str) { return judge(str, SMALL_ALPH_STRING); } /** * 半角英字チェック(大文字) * * 指定した文字列が全て半角英字(大文字)であるか否かをチェックします * ※nullはfalse判定されます * * @param str チェック対象の文字列 * @return true:全て半角英字(大文字) false:半角英字(大文字)以外の文字が含まれている */ public static boolean isHalfBigAlpha(String str) { return judge(str, BIG_ALPH_STRING); } /** * 文字列判定 * * 指定した文字列が指定した判定文字列内の文字列から構成されているか否かをチェックします * ※nullはfalse判定されます * * @param str チェック対象の文字列 * @param str 判定対象の文字列 * @return true:判定文字列内の文字列から構成されている false:判定文字列内の文字列以外の文字が含まれている */ private static boolean judge(String str, String judgestr) { return (str == null)? false : str.matches(judgestr); } } |
テストコード(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 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 |
package sample.test; import static org.junit.jupiter.api.Assertions.*; import org.junit.jupiter.api.Test; import sample.code.StringCheker04; class StringCheckerTest04 { @Test void test01() { // null assertFalse(StringCheker04.isHalfAlpha(null)); } @Test void test02() { // 空文字 assertFalse(StringCheker04.isHalfAlpha("")); } @Test void test03() { // 半角英字(小文字) assertTrue(StringCheker04.isHalfAlpha("abc")); } @Test void test04() { // 半角英字(大文字) assertTrue(StringCheker04.isHalfAlpha("ABC")); } @Test void test05() { // 半角数字 assertFalse(StringCheker04.isHalfAlpha("123")); } @Test void test06() { // 全角英字 assertFalse(StringCheker04.isHalfAlpha("abc")); } @Test void test07() { // null assertFalse(StringCheker04.isHalfSmallAlpha(null)); } @Test void test08() { // 空文字 assertFalse(StringCheker04.isHalfSmallAlpha("")); } @Test void test09() { // 半角英字(小文字) assertTrue(StringCheker04.isHalfSmallAlpha("abc")); } @Test void test10() { // 半角英字(大文字) assertFalse(StringCheker04.isHalfSmallAlpha("ABC")); } @Test void test11() { // 半角数字 assertFalse(StringCheker04.isHalfSmallAlpha("123")); } @Test void test12() { // 全角英字 assertFalse(StringCheker04.isHalfSmallAlpha("abc")); } @Test void test13() { // null assertFalse(StringCheker04.isHalfBigAlpha(null)); } @Test void test14() { // 空文字 assertFalse(StringCheker04.isHalfBigAlpha("")); } @Test void test15() { // 半角英字(小文字) assertFalse(StringCheker04.isHalfBigAlpha("abc")); } @Test void test16() { // 半角英字(大文字) assertTrue(StringCheker04.isHalfBigAlpha("ABC")); } @Test void test17() { // 半角数字 assertFalse(StringCheker04.isHalfBigAlpha("123")); } @Test void test18() { // 全角英字 assertFalse(StringCheker04.isHalfBigAlpha("abc")); } } |