Шаблон \d+(?=\d{4})
не совпадает в строке примера, так как соответствует 1+ цифрам, утверждая, что справа - 4 цифры.
Другой вариант - сопоставлять пробел и 5+ символов слова доконец строки или совпадение с одним словом в группе 1 с использованием чередования .
При обратном вызове replace верните +
, если у вас естьсопоставленная группа 1, в противном случае возвращает совпадение.
\w{5,}$|(\w)
Regex demo
let pattern = / \w{5,}$|(\w)/g;
let str = "HFGR56 GGKDJ JGGHG JGJGIR"
.replace(pattern, (m, g1) => g1 ? '+' : m);
console.log(str);