Разделение JavaScript на любое количество символов

#javascript

#javascript

Вопрос:

Возможно ли разделение на любое количество символов в JavaScript, возможно, с помощью регулярного выражения?

Пример:

«Это ____ подчеркивания» вернет ["These are ", " underscores"]

Вот что у меня есть до сих пор:

 "These are ____ underscores".split("_").filter(x => x);
  

Однако я не уверен, есть ли более эффективный / лучший способ сделать это.

Спасибо.

Ответ №1:

 let x = 'These are ____ underscores';
let y = x.split(/_ /);
console.log(y);  

Комментарии:

1. Обратите внимание, что если у вас есть что-то вроде let x = '__These are ____ underscores__'; , может быть, вы хотите .filter(Boolean) после split() .

Ответ №2:

Вы можете разделить по символу, а затем отфильтровать непустые массивы:

 var str = "These are ____ underscores"
str.split("_").filter(x => x.length)