我需要一個JavaScript函數,將解析頁面的HTML源代碼作爲外部腳本被調用,檢索源中的任何美元金額,並設置最高美元金額爲JavaScript變量。例如,如果頁面包含文本「您的產品是$ 40.32,稅金是$ 4.50,您的總金額是$ 44.82」,則JS應該解析這些值並將$ 44.82設置爲「var total」作爲最高金額。可能?解析美元金額的HTML源代碼,然後設置最高金額作爲變量
2
A
回答
0
謝謝基於我寫的這個,這是有效的提示。希望你或我的解決方案能夠幫助其他人:
var dochtml = document.getElementsByTagName('body')[0] .innerHTML;
dochtml = dochtml.replace(/(\ r \ n | \ n | \ r)/ gm,「」);
var price_array = new Array; var pattmatch = /(\$(([0-9]{0,1})?.[0-9]{1,2}))|(\$([1-9]{1}[0 ?-9] {0,2}([,] [0-9] {3})*)([0-9] {1,2}))/ GI; price_array = dochtml.match(pattmatch); (var i = 0; itotal ||!total){ var total = price_array [i];如果(price_array){ } }
document.write(total); }
0
看看這裏這個問題,它演示瞭如何從字符串中提取數字:Javascript extracting number from string
試試這個:
// get all content from page
var content = document.body.innerHTML;
// create an array of all dollar amounts in the content
arrayNum = content.match(/\$[0-9]+\.[0-9]+/g);
// display array of numbers
console.info(arrayNum);
var high = 0;
for(var i = 0; i < arrayNum.length; i++) {
// remove the dollar sign and cast the string to a float
arrayNum[i] = parseFloat(arrayNum[i].substring(1));
// get the high value - O(n) operation
high = ((arrayNum[i]) > high) ? arrayNum[i] : high;
}
alert("High value = " high);
0
您可以從JavaScript通過抓取當前文檔的HTML抓取文檔的innerHtml,如下所示:
document.getElementsByTagName('html')[0].innerHTML
然後,您可以用正則表達式抽出所有貨幣值,其中一些東西一樣:在所有的比賽,每次
((\$(([0-9]{0,1})?\.[0-9]{1,2}))|(\$([1-9]{1}[0-9]{0,2}([,][0-9]{3})*)(\.[0-9]{1,2})?))
只是環和電流的匹配比總價值,合計設定爲當前的比賽更大。
免責聲明:該正則表達式是從社區拉http://gskinner.com/RegExr/,我不能答應你它是100%完全防範。
相關問題
- 1. 條紋將金額設置爲$變量
- 2. 與金額最高
- 3. 金額小於1美元時如何獲得零金額
- 4. c輸入金額的最小金額
- 5. 查詢 - 按最高金額
- 6. 只顯示最高金額
- 7. MySQL選擇最高金額
- 8. 選擇最高金額排
- 9. Java - 需要解析美元金額的幫助
- 10. JavaScript - 美元金額的上限
- 11. REGEXP使用egrep匹配美元金額
- 12. php美元金額正則表達式
- 13. 實時格式化美元金額
- 14. 金額分解 - SQL
- 15. SQL爲特定工作創建美元金額的總和?
- 16. 總金額的更新金額
- 17. Sql Server MAX的金額(金額)
- 18. Java - 格式雙值作爲美元金額
- 19. 確定一美元金額的最佳硬幣組合
- 20. NetSuite發票金額支付金額
- 21. 如何從日期和金額列表中選擇最高金額日期
- 22. 檢查支付金額中的美分
- 23. awk的數量和金額:
- 24. 用美分顯示全部美元金額的輸入框
- 25. 找到變量的剩餘金額
- 26. 金額總額後應自動加入
- 27. 將文本框從十進制格式設置爲美元金額
- 28. 購物車最低金額
- 29. 角2最大金額
- 30. 打印最後一筆金額
當然這是可能的。你試過什麼了?你想發佈一些代碼?你的問題不應該是理論上的問題,或者要求人們爲你編寫完整的解決方案。 – jmort253 2011-02-19 05:16:43