我有一些文本內容(從使用jQuery的HTML閱讀),看起來像任一示例:的Javascript正則表達式替換,多
<span>39.98</span><br />USD
或跨多行與增發價,如:
<del>47.14</del>
<span>39.98</span><br />USD
的數字可能被格式化像
- 1,234.99
- 1239,99
- 1 239,99
等(即不只是一個正常的十進制數)。我想要做的就是獲得<span></span>
內的任何價值。
這就是我到目前爲止所提出的,但是我遇到了多行方法的問題,也有可能存在兩個數字的事實,我想忽略第一個數字。我嘗試過使用^和$以及「m」多行修飾符的變體,但沒有運氣。
var strRegex = new RegExp(".*<span>(.*?)</span>.*", "g");
var strPrice = strContent.replace(strRegex, '$1');
我可以在這裏使用jQuery,如果有目標字符串中的跨度標籤的方式(即它不是在這一點上,我們正在處理的DOM)。
來自所有受訪者的良好答案,但是您的答案與我正在嘗試做的最接近,並且它工作得很好,謝謝! – duncan
爲什麼第二個字符集[。\ s \ S]包含。 ?它似乎也適用於[\ s \ S] – duncan
@duncan,這是一個錯字。現在修復。 – joelmdev