Разделить строку на части по нескольким условиям - PullRequest
0 голосов
/ 01 ноября 2019

У меня есть какая-то строка для разделения на массив при разных условиях. Я пробовал разные способы сделать это. Но все равно не так, как ожидалось.

Моя строка может содержать любой символ. Примечание: строка не содержит пробелов

Пример строки: - $$_hello_$$-world/foo/$$_bar_$$$$_john_$$-doe

Мне нужно разделить как,

  1. $$_anythinghere_$$ это одна часть

  2. - другая часть

  3. / другая часть

  4. любые другие тексты какдругая часть

Я хочу разбить эту строку на массив вроде

["$$_hello_$$", "-", "world", "/", "foo", "/", "$$_bar_$$", "$$_john_$$", "-", "doe"]

Я ожидаю решения в ванильном JavaScript.

1 Ответ

1 голос
/ 01 ноября 2019

Это может помочь.

var regex = new RegExp(/(\$\$\_(.*?)\_\$\$)|(\-)|(\/)|((?:.)\w*)/, 'ig');
var str = "$$_hello_$$-world/foo/$$_bar_$$$$_john_$$-doe";
var matches = [];


while (i = regex.exec(str)) {
    matches.push(i[0]);
}

console.log(matches)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...