【问题标题】:Javascript move characters in string?Javascript在字符串中移动字符?
【发布时间】:2021-09-19 02:28:15
【问题描述】:

我有一个公式,我需要在数千个公式中移动字符。数量需要移到方程的前面,我很接近但不知道如何。 公式示例:

const formula = '(({oval}) && ({2inchby3inch}) && {qty} >= 91000  && {qty} <=91999  && {whitebopp})';
var index1 = (formula.indexOf("{qty}")) - 5;
var index2 = (formula.indexOf("&& {whitebopp}")) - 15;
console.log(formula.slice(1)+formula.slice(index1, index2));

当我希望它打印 "(({qty} &gt;= 91000 &amp;&amp; {qty} &lt;=91999) &amp;&amp; ({oval}) &amp;&amp; ({2inchby3inch}) &amp;&amp; {whitebopp}) " 时,此代码会打印出 "({oval}) &amp;&amp; ({2inchby3inch}) &amp;&amp; {qty} &gt;= 91000 &amp;&amp; {qty} &lt;=91999 &amp;&amp; {whitebopp})) &amp;&amp; {qty} &gt;= 91000 &amp;&amp; " 我究竟做错了什么?现在正在将所需的文本粘贴在末尾,我希望它在开头之后粘贴一个字符。

【问题讨论】:

    标签: javascript string character


    【解决方案1】:

    您可以使用 split() 和 reduce() 重新排列数组

    let formula = '(({oval}) && ({2inchby3inch}) && {qty} >= 91000  && {qty} <=91999  && {whitebopp})';
    formula = formula.slice(1, -1)
    let nformula = "(" + formula.split(" && ").reduce((b, a) => a.includes('{qty}') ? [a, ...b] : [...b, a], []).join(" && ") + ")"
    console.log(nformula)

    【讨论】:

    • 非常感谢!
    猜你喜欢
    • 1970-01-01
    • 2013-12-13
    • 2019-04-26
    • 1970-01-01
    • 2022-06-13
    • 1970-01-01
    • 2022-01-13
    • 2021-02-09
    • 1970-01-01
    相关资源
    最近更新 更多