JavaScriptで小数(10進数)を検証する方法をわかりやすく解説
JavaScriptで小数(10進数)を検証するには、match()メソッドを使用します。match()メソッドは、文字列に対して正規表現によるパターンマッチングを行い、一致した結果を返すメソッドです。
使用する正規表現のポイント
本記事で使用する正規表現「/^[-+]?[0-9]+\.[0-9]+$/」は、以下の要素で構成されています。
- ^[-+]? … 文字列の先頭に符号(+ または -)が付いていても、なくてもよい
- [0-9]+ … 整数部分が1桁以上の数字であること
- \. … 小数点(ドット)が必ず含まれること
- [0-9]+$ … 小数部分が1桁以上の数字で終わること
サンプルコード
以下のコードを実行して、実際に小数の検証を試してみましょう。
<html>
<body>
<script>
var str = "1.5";
var re = /^[-+]?[0-9]+\.[0-9]+$/;
var found = str.match( re );
if (found) {
document.write("decimal");
} else {
document.write("not decimal");
}
</script>
</body>
</html>
実行結果の解説
この例では、変数strに格納された文字列「1.5」が正規表現に一致するため、「decimal」という結果が表示されます。もし「abc」や「12」(小数点なしの整数)など、パターンに合わない文字列を代入した場合は、「not decimal」と表示されます。
なお、match()メソッドは一致した場合に結果の配列を、一致しなかった場合はnullを返します。そのため、if文と組み合わせることで、入力値が有効な小数かどうかを簡単に判定できます。フォームの入力チェックなど、ユーザーからの数値入力を検証したい場面でぜひ活用してください。
-
JavaScriptで小数を検証するには?正規表現を使った実装例を解説
JavaScriptで小数を検証する方法 JavaScriptで、ユーザーが入力した値が正しい小数(小数点を含む数値)かどうかを判定したい場面はよくあります。そんなときに便利なのが正規表現です。本記事では、match()メソッドと正規表現を組み合わせて、入力値が小数かどうかを検証する方法を、具体的なコード例とともにわかりやすく解説します。 使用する正規表現パターン 今回の検証では、以下の正規表現を使用します。 /^[-+]?[0-9]+\.[0-9]+$/ このパターンの各要素の意味は次のとおりです。 ^[-+]?:文字列の先頭に符号(+ または -)が付いていても、付いていなくてもマッチ
-
JavaScriptでランダムなパスワードジェネレーターを作成する方法
JavaScriptでパスワードジェネレーターを作成するには、Math.random()メソッドを活用するのが簡単で効果的です。Math.random()は0以上1未満の乱数を返すため、これを使って文字コレクションからランダムに文字を選び出し、任意の長さのパスワードを生成できます。 パスワード生成の仕組み 基本的な流れは以下の通りです。 使用する文字(大文字・小文字のアルファベットと数字)を1つの文字列として定義する Math.random()に文字数を掛け、Math.floor()で整数に変換してインデックスを求める 指定された長さになるまでループ処理で文字を連結していく サンプルコード