Разделить строку с единственным (не дважды) вхождением разделителя в Javascript

Это лучше объяснить на примере. Я хочу добиться раскола, как это:

two-separate-tokens-this--is--just--one--token-another

- & GT;

["two", "separate", "tokens", "this--is--just--one--token", "another"]

Я наивно пыталсяstr.split(/-(?!-)/) и он не будет соответствовать первому вхождению двойных разделителей, но будет совпадать со вторым (поскольку за ним не следует разделитель):

["two", "separate", "tokens", "this-", "is-", "just-", "one-", "token", "another"]

У меня есть лучшая альтернатива, чем цикл по строке?

Между прочим, следующим шагом должна быть замена двух последовательных разделителей одним, так что это своего рода экранирование, повторяя его ... Таким образом, конечный результат будет следующим:

["two", "separate", "tokens", "this-is-just-one-token", "another"]

Если это может быть достигнуто всего за один шаг, это должно быть действительно здорово!

Ответы на вопрос(6)

Ваш ответ на вопрос