Spring Boot チェック処理

Spring Bootで肯定先読みを利用して半角英数字を含むかどうかチェックしてみた

特定の文字列に、半角英数字のいずれかが含まれているかのチェックを行う場合、肯定先読みという正規表現を利用することが多い。肯定先読みについては、以下のサイトを参照のこと。
https://www-creators.com/archives/2746#i-3

また、他にもいろいろな正規表現を利用することができる。各種正規表現については、以下のサイトを参照のこと。
https://murashun.jp/article/programming/regular-expression.html#chapter-1

今回は、肯定先読みを利用して、半角英数字のうち特定の文字を含むかどうかのチェック行ってみたので、そのサンプルプログラムを共有する。

前提条件

下記記事の実装が完了していること。

Spring BootのWEB画面上でチェック処理を実装してみた(ソースコード編)今回も、引き続きチェック処理を含むそのサンプルプログラムについて共有する。前回は、サンプルプログラムの完成イメージについて記載していたが...

サンプルプログラムの作成

作成したサンプルプログラムの構成は以下の通り。
サンプルプログラムの構成
なお、上記の赤枠は、前提条件のプログラムから追加・変更したプログラムである。

フォームクラスの内容は以下の通りで、入力されたテキストについて、半角英数字のいずれかが含まれているかのチェックを行っている。

また、コントローラクラスの内容は以下の通りで、mainメソッド内で、フォームクラスに定義されたチェックを行うようになっている。

さらに、チェック処理で使用しているエラーメッセージは、以下のプロパティファイルで定義している。

なお、上記プロパティファイルでは、一部を改行して表示しているが、実際は改行しない設定になっている。

また、初期表示画面の内容は以下の通りで、フォームクラスの入力チェックの結果を表示している。

さらに、メイン画面のHTMLは以下の通りで、ログイン後の画面の内容を定義している。

その他のソースコード内容は、以下のサイトを参照のこと。
https://github.com/purin-it/java/tree/master/spring-boot-check-include-alphanumeric/demo



「FlexClip」はテンプレートとして利用できる動画・画像・音楽などが充実した動画編集ツールだったテンプレートとして利用できるテキスト・動画・画像・音楽など(いずれも著作権フリー)が充実している動画編集ツールの一つに、「FlexCli...

サンプルプログラムの実行結果

サンプルプログラムの実行結果は、以下の通り。

1) Spring Bootアプリケーションを起動し、「http:// (ホスト名):(ポート番号)/」にアクセスすると、以下のように、index.htmlの画面が表示されることが確認できる。
サンプルプログラムの実行結果_1

2) テキスト1~4に、「abcABC123」という文字列を入力し「メイン画面へ」ボタンを押下すると、以下のように、メイン画面に遷移することが確認できる。
サンプルプログラムの実行結果_2_1

サンプルプログラムの実行結果_2_2

3) テキスト1に、「ABC123」という文字列を入力し「メイン画面へ」ボタンを押下すると、以下のように、エラーメッセージが表示されることが確認できる。
サンプルプログラムの実行結果_3_1

サンプルプログラムの実行結果_3_2

4) テキスト1に、「a」という文字列を入力し「メイン画面へ」ボタンを押下すると、以下のように、メイン画面に遷移することが確認できる。
サンプルプログラムの実行結果_4_1

サンプルプログラムの実行結果_4_2

5) テキスト2に、「ABC123」という文字列を入力し「メイン画面へ」ボタンを押下すると、以下のように、エラーメッセージが表示されることが確認できる。
サンプルプログラムの実行結果_5_1

サンプルプログラムの実行結果_5_2

6) テキスト2に、「a」という文字列を入力し「メイン画面へ」ボタンを押下すると、以下のように、メイン画面に遷移することが確認できる。
サンプルプログラムの実行結果_6_1

サンプルプログラムの実行結果_6_2

7) テキスト3に、「ABC123」という文字列を入力し「メイン画面へ」ボタンを押下すると、以下のように、エラーメッセージが表示されることが確認できる。
サンプルプログラムの実行結果_7_1

サンプルプログラムの実行結果_7_2

8) テキスト3に、「abcABC」という文字列を入力し「メイン画面へ」ボタンを押下すると、以下のように、メイン画面に遷移することが確認できる。
サンプルプログラムの実行結果_8_1

サンプルプログラムの実行結果_8_2

9) テキスト4に、「abcABC」という文字列を入力し「メイン画面へ」ボタンを押下すると、以下のように、エラーメッセージが表示されることが確認できる。
サンプルプログラムの実行結果_9_1

サンプルプログラムの実行結果_9_2

10) テキスト4に、「abcABC1」という文字列を入力し「メイン画面へ」ボタンを押下すると、以下のように、メイン画面に遷移することが確認できる。
サンプルプログラムの実行結果_10_1

サンプルプログラムの実行結果_10_2

要点まとめ

  • 特定の文字列に、半角英数字のいずれかが含まれているかのチェックを行う場合、肯定先読みという正規表現を利用することが多い。
  • 正規表現「.*」は、任意の0文字以上の文字列にマッチする。