Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Функция которая возвращяет массив с разными вариациями (https://javascript.ru/forum/events/73809-funkciya-kotoraya-vozvrashhyaet-massiv-s-raznymi-variaciyami.html)

weirdjava 17.05.2018 19:28

Функция которая возвращяет массив с разными вариациями
 
Всем привет!

У меня дилемма, есть обычная строка, не меньше 20 слов, разделенна пробелами. Как написать ф-ю которая бы возвращала массив со всеми вариациями идущих подряд слов, начиная с 2.

Пример :
a main working website

Результат :
A main, main working, working website,
A main working, main working website,
A main working website


:help: :help: :help:

рони 17.05.2018 20:47

weirdjava,
<script>
function generate(str) {
    var arr = str.split(/\s+/);
    var length = arr.length,
        result = [],
        temp;
    for (var i = 2, j; i <= length; i++) {
        j = length - i;
        for (var k = 0; k <= j; k++) {
            temp = arr.slice(k, k + i);
            result.push(temp.join(" "))
        }
    }
    return result
};
var str = "a main working website";
document.write(JSON.stringify(generate(str)));

  </script>

weirdjava 18.05.2018 13:35

рони,
Спасибо, выручил!,буду практиковаться дальше.

рони 18.05.2018 14:02

weirdjava,
это к специалистам по php ...

Nexus 18.05.2018 14:03

weirdjava,
<?php
    $str = 'In My Cart : 11 12 items';
    
    echo preg_replace('#\D+?#',null,$str);
Result

ps.
Цитата:

Сообщение от weirdjava
Первое что пришло в голову

Кому? stackoverflow.com

weirdjava 18.05.2018 15:14

Nexus,
Спасибо,нашел как сделать быстрее рони,


Часовой пояс GMT +3, время: 18:00.