[英]How to create a Regular Expression with the following conditions
數字輸入不應超過 8 位(計算小數點兩邊的數字)。 示例:123456.78 或 0.12 或 1.23
數值應該能夠接受負數。 示例:-0.8 或 -1.23
最多允許 2 個十進制數
數值不應接受輸入框中的任何字母
我嘗試創建以下正則表達式,但我無法非常有效地弄清楚
^-?[0-9]\d*(\.\d+)?[,8]$
要匹配所需的位數而不是更多,請在模式的開頭先行(?:\d\.?)
1 到 8 次,然后匹配\d*(?:\.\d{1,2})?$
匹配一個數字,如果包含小數,則最多包含 2 個小數字符:
^-?(?=(?:\d\.?){1,8}$)\d*(?:\.\d{1,2})?$
https://regex101.com/r/rQMRVX/5
(除非你需要捕獲小數部分,它可以是一個非捕獲組如上)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.