JSFiddle - React, Tailwind, and code Playground

JavaScript

function evalRPN(expr) {
    var m = expr.match(/\d+|[*\/+-]/g), st = [], a;
    for(var i = 0; i < m.length; i++) {
        switch(m[i]) {
            case "+":  if(st.length < 2) return NaN; a = st.pop(); st.push(st.pop() + a); break;
            case "-":  if(st.length < 2) return NaN; a = st.pop(); st.push(st.pop() - a); break;
            case "*":  if(st.length < 2) return NaN; a = st.pop(); st.push(st.pop() * a); break;
            case "/":  if(st.length < 2) return NaN; a = st.pop(); st.push(st.pop() / a); break;
            default:   if(st.length > 1) return NaN; st.push(parseInt(m[i]));
        }
    }
    return st.pop();
}

function printRPN(expr) {
    var m = expr.match(/\d+|[*\/+-]/g), st = [], a;
    for(var i = 0; i < m.length; i++) {
        switch(m[i]) {
            case "+":  a = st.pop(); st.push("(" + st.pop() + "+" +  a + ")"); break;
            case "-":  a = st.pop(); st.push("(" + st.pop() + "-" +  a + ")"); break;
            case "*":  a = st.pop(); st.push("(" + st.pop() + "*" +  a + ")"); break;
            case "/":  a = st.pop(); st.push("(" + st.pop() + "/" +  a + ")"); break;
            default:   st.push(parseInt(m[i]));
        }
    }
    return st.pop();
}

function solve(input, target) {
    var 
        len = input.length, 
        str = input.replace(/./g, "$& ").split(""),
        ops = { "0": "",  "1": " ", "2": "+", "3": "-", "4": "*", "5": "/" },
        res = [];
        
    for(i = 0; i < Math.pow(6, len); i++) {
        var s = ("00000000000" + i.toString(6)).substr(-len);
        for(var k = 0; k < len; k++)
            str[k * 2 + 1] = ops[s.charAt(k)]
        var expr = str.join("");
        if(evalRPN(expr) == target)
            res.push(expr);
    }
    return res;
}


var res = solve("129374", 22);
for(var i = 0; i < res.length; i++)
    document.write(printRPN(res[i]) + "<br>");