簡體   English   中英

如果大於變量,如何替換字符串中的數字?

[英]How to replace numbers in string if greater than variable?

我有一個始終包含 2 個數字的字符串,如果這些數字大於 5,我需要用“> 5”替換這些數字。

const str = "SmartWear sklad 15&nbsp;ks<br />Externý sklad 12&nbsp;ks"; 
let limit = 5;

結果應該是:

const replaced = "SmartWear sklad > 5&nbsp;ks<br />Externý sklad > 5&nbsp;ks";

我試過了,但如果另一個數字也大於 5,那實際上不起作用。

for (let stock of stocks) {
    let tooltip = stock.getAttribute("data-original-title") //"SmartWear sklad 15&nbsp;ks<br />Externý sklad 0&nbsp;ks";
    let limit = 5;
    const index = tooltip.search(/[0-9]/);
    const firstNum = tooltip[index];

    if (firstNum > limit) {
        const replaced = tooltip.replace(firstNum, `> ${limit}`)
        stock.setAttribute("data-original-title", replaced)
    }
}

.replace回調應該可以解決問題

 const str = "SmartWear sklad 15&nbsp;ks test 3<br />Externý sklad 12&nbsp;ks"; let limit = 5; newStr = str.replace(/\d+/g, num => Number(num) > limit? `&gt; ${limit}`: num) document.write(newStr)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM