開始,我有以下的正則表達式,我試圖只允許類似的數字:JavaScript的匹配數字不是零或零
1, 2, 3, 10, 11, 24 etc
和NOT 0, 01, etc
if (!$(this).text().match(/^[1-9][0-9]/g)) {
}
是這正確嗎?因爲它不允許像1,2,3等數字,但是是11,12等。
開始,我有以下的正則表達式,我試圖只允許類似的數字:JavaScript的匹配數字不是零或零
1, 2, 3, 10, 11, 24 etc
和NOT 0, 01, etc
if (!$(this).text().match(/^[1-9][0-9]/g)) {
}
是這正確嗎?因爲它不允許像1,2,3等數字,但是是11,12等。
您需要在第二個[0-9]
之後指定*
以匹配零個或多個數字。除了一位數字之外,這也將無法匹配兩位數以上的數字。正確的正則表達式是^[1-9][0-9]*
。
將$添加到最後,除非您不想匹配'10 somthing else'... – inf3rno
嘗試使用REPLACE()
if (!$(this).text().replace(/^(-?)0+/,'').match(/[1-9]?[0-9]*/))
你能不能只檢查的第一個字符是'0'?或者你需要允許'0.5'等? –
會運行parseInt($(this).text(),10)解決你的問題? –
@AndrzejDoyle不只是整數,所以檢查前導零將工作 – Cameron