#javascript #arrays #split #newline
#javascript #массивы #разделение #новая строка
Вопрос:
Если есть текст на нескольких строках, и вы должны разделить его на основе новых строк, вы делаете это следующим образом:
const splitedText = inpitValue.split('n');
Это отлично работает для текста, подобного следующему, он разбивает его на 3 части.
this
is
my text
Но можно ли разделить его на основе пустой строки?
Например, для следующего текста он должен быть разделен только на 2 части.
This
is
a new
text
Комментарии:
1. Попробуйте
^$
или^[^Srn]*$
для одной строки, или^s*r?n
для нескольких строк.2. вы должны использовать
.split('nn');
Ответ №1:
let inpitValue = `This
is
a new
text`;
const splitedText = inpitValue.split("nn");
console.log(splitedText);
Ответ №2:
@aRvi прав
вы должны использовать .split(‘n n’);
const splitedText = inpitValue.split('nn');
Ответ №3:
Вы можете сопоставить 0 символов пробела с начала строки, за которыми следует сопоставление новой строки для разделения на 1 или более «пустых» строк, если только пробелы также считаются пустыми.
^s*r?n
let regex = /^s*r?n/gm;
let inpitValue = `This
is
a new
text`;
const splitedText = inpitValue.split(regex);
console.log(splitedText);
Для разделения на 2 или более новых строк:
[rn]{2,}