[英]Regex to validate comma-separated numbers with optional fractional parts
使用 JavaScript,我只需要接受數字和逗號。
我使用的正則表達式模式如下
var pattern = /^[-+]?[0-9]+(\.[0-9]+)?$/;
我如何接受上述模式中的逗號,以便3200
或3,200
或3,200.00
等值有效?
有類似的問題只部分解決了這個問題:
使用以下正則表達式:
^[-+]?(?:[0-9]+,)*[0-9]+(?:\.[0-9]+)?$
這里的基本變化是添加了(?:[0-9]+,)*
匹配的子模式:
[0-9]+
- 1 位或更多位,
- 逗號 0 次或多次(感謝*
量詞)。
我還使用了非捕獲組,以便正則表達式輸出“更干凈”。
如果您需要檢查號碼中的 3 位組,請使用
^[-+]?[0-9]+(?:,[0-9]{3})*(?:\.[0-9]+)?$
這里, (?:,[0-9]{3})*
匹配 0 個或多個逗號序列和 3 位子字符串 ( [0-9]{3}
)。 {3}
是一個限制量詞,正好匹配前面子模式的 3 次出現。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.