我在Chrome中運行以下JavaScript。當我期待「123456.78」時,它會產生一個空白字符串。Javascript正則表達式執行不匹配
var amt = "$123,456.78";
digitRegex = /(\d|\.)*/
amtarr = digitRegex.exec(amt);
amtstr = amtarr.join("");
alert(amtstr);
任何想法?
最終代碼最終被這:
moneyRegex = /^\$?(\d{1,3}(\,\d{3})*|(\d+))(\.\d{1,2})?$/
amt = $("#txtAmt").val();
amtok = (amt.search(moneyRegex) != -1);
amtval = 0;
if (amtok == true) {
digitRegex = /[\d\.]+/g
amtarr = digitRegex.exec(amt);
amtstr = amtarr.join("");
alert(amtstr);
}
謝謝@sergio,它做到了。缺少全球旗幟是一個竅門。 – sisdog