[問題] JTextField的判定輸入格式設定?
最近寫了個小程式卻出現了問題,我需要能判定JTextField欄位輸入的值是IP位置,也就是
只能輸入255以下的數字,其他一律禁止,我是將IP位置分成4個JTextField來輸入,但我目
前使用的方法只想到幾種,都有問題如下
第一個
xxx.getText().matches("[0-2][0-9][0-9]{1,3}")
但這樣255是合法的,299卻是非法IP,無法抓出
另一個
xxx.getText() < 256
雖然一定可限制在255以內,但若輸入非數字一樣抓不到
另一個
xxx.getText() < 256 && xxx.getText().matches("[^a-zA-Z]")
語法好像有點錯,限制在255以內及非大小寫a-z,語法較長且有4個欄位要確認,輸入符號或
中間有空格一樣抓不到
目前還想不到好方法,理論上用matches()會是最好的選擇,一律禁止限定格式以外的,只能
輸入0-2或0-9的數字,但255以上的數值不知該怎麼判別,大家有想到其他好方法嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.216.196.104
討論串 (同標題文章)
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 1 之 7 篇):
java 近期熱門文章
PTT數位生活區 即時熱門文章