• ベストアンサー

正規表現を使った小数入力チェック方法について

Javaのjava.util.regex.Matcherクラスと java.util.regex.Patternクラスを使用して正規表現を使った 数値の入力チェックを行いたいと思っています。 行いたいチェックは下記の通りです。 【内容】 整数5桁以内で入力 小数部は1桁、ただし小数部は任意入力 例: 1234 => OK 12345 => OK 123456 => NG 12345. => NG 12345.1 => OK 12345.12 => NG 色々考えてみましたが 小数部が任意入力の事もあり、 うまく実現できずに困っています。 このような場合どのような正規表現を組めば良いでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

[0000.1] をOKとするか否かによりますが、 わたしはNGとするほうが自然で好きです。 なので正規表現は少し複雑になって以下のようになります。 ^(([1-9]\\d{0,4})|0)(\\.\\d)?$

noname#53515
質問者

お礼

回答ありがとうございました。 ここまでできるなんて 正規表現は奥が深いですね。 きちんと勉強するようにします。

その他の回答 (1)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

^\d{1,5}(\.\d)?$ でどうでしょう

noname#53515
質問者

お礼

お答えいただきありがとうございました。 参考になりました。

関連するQ&A