Проблема в том, что макрос замены не содержит поля с номером совпадения. Поэтому такой вариант не подходит - все пробелы будут замененысделай замену пробела радомного на линку.
{-JS.Execute-|-var kw, _kw, text, _text, tmp, r, i;kw = "место для ссылки";text = "место для текста";_kw = kw.split("\r\n");_text = text.split(/ /gi);for(i = 0; i < _kw.length; i++){r = Math.floor(Math.random()*(_text.length));if(r == (_text.length - 1)) _text.splice(r, 1, _text[r], _kw);else _text.splice(r, 1, _kw, _text[r]);}text = _text.join(" ");text;-}
Вот этот скрипт.
Ап, может кто-то все таки знает реализацию, а то циклом как то геморно получается.А если мне надо рандомное кол-во ссылок, а не одну, вставить в текст, то как это осуществить?
{-JS.Execute-|-var kw, _kw, text, _text, tmp, r, i;kw = "Сюда ставлю вариацию моего анкора";text = "А сюда вариацию моего текста";_kw = kw.split("\r\n");_text = text.split(/ /gi);for(i = 0; i < _kw.length; i++){r = Math.floor(Math.random()*(_text.length));if(r == (_text.length - 1)) _text.splice(r, 1, _text[r], _kw);else _text.splice(r, 1, _kw, _text[r]);}text = _text.join(" ");text;-}
Как настроить-то?Результат: undefined
Чёт не выходит
{-JS.Execute-|-var kw, _kw, text, _text, tmp, r, i;kw = "{-Variable.anchor-}";text = "{-Variable.body-}";_kw = kw.split("\r\n");_text = text.split(/ /gi);for(i = 0; i < _kw.length; i++){r = Math.floor(Math.random()*(_text.length));if(r == (_text.length - 1)) _text.splice(r, 1, _text[r], _kw);else _text.splice(r, 1, _kw, _text[r]);}text = _text.join(" ");text;-}