[英]check for minimum amount in regular expression
我有一個正則表達式,用於檢查0到999999之間的值。
/^((?:\d{1,3},)?\d{1,3})(\.\d{2})$/
問題是0.00是有效的。 我想將0.01設置為有效的最小數量。 因此,輸入0.00將使我無效。
我對正則表達式的黑藝術感到恐懼。 有人可以幫忙嗎?
謝謝。
不要將邏輯放入正則表達式中。 它們用於匹配模式,而不是進行數值比較。
在Perl中,這將是:
if ( $s =~ /^((?:\d{1,3},)?\d{1,3})(\.\d{2})$/ && ( $s > 0 ) ) {
# acceptable number
}
如果正確使用正則表達式,並不是一件黑事。 嘗試對它們進行數值計算不能正確使用它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.