正規表現を簡単に解説 数字とドットを判別する正規表現

正規表現を簡単に解説 数字とドットを判別する正規表現

数字、小数点以下も含む、数字を判別したい
と急に思った!

簡単に言うと、体重の入力判定だ。
入力数の頭にゼロが来てはいけない、ドットが重複しないなどの
判別を正規表現を使ってやってみた。

もちろん・・・正規表現など知らない(笑)!!`;:゙;`;・(゚ε゚ )ブッ!!
調べてみた。


色々調べてみて分かってきた。
自分がやりたい判別を日本語にして
それを正規表現に置き換えていけば分かりやすい。


今回のミッションは、体重の入力判定。
つまり日本語にすると、


「1~9の数字から始まって数字で終わる か

もしくは、

1~9の数字から始まって表数点以下の対応でドットが1回のみ使われて数字で終わる」


上記をTUREとしたい。

つまり条件が2つある。


先に答えから・・・正規表現に直すと、


^[1-9][0-9]+$|^[1-9][0-9]+\.?[0-9]+$


////////↓解説↓////////

^[1-9] ⇒1~9の数字から始まる

[0-9]+$ ⇒0~9の数字で1桁以上の数字で終わる

↓分解解説↓
////////////////////////////////////
[0-9] ⇒0~9の数字
+ ⇒1回以上の連続する文字
$ ⇒終わる
////////////////////////////////////

| ⇒ or もしくは、という意味。

^[1-9][0-9]+ ⇒ここまでは上記と同じ

\.?[0-9]+$ ⇒ドットが0~1回だけで0~9の1桁以上の数字で終わる
↓分解解説↓
////////////////////////////////////
\.? ⇒ドットが0~1回だけ出てくる
\. ⇒ドットは正規表現で「改行を除く任意の1文字」という意味があるためエスケープ
+$ ⇒1回以上連続する数字で終わる
////////////////////////////////////


きっとこんな感じだ!
正規表現が正常に動くかどうかをチェックしてくれるサイトは
下記です。
http://www.rider-n.sakura.ne.jp/regexp/regexp.php
関連記事


【 忘却板/忘れた事を貼れます 】

コメント

非公開コメント