Вы можете рассмотреть двухэтапное решение: сопоставить подстроки после разделителя, а затем разделить:
аюсь разбить строку:
Chan 0: 2.50 0.12 13.92 83.46,Chan 1: 2.58 85.92 2.47 9.03,Chan 2: 5.00 85.0 33.33 6.64,Chan 3: 0.00 0.00 14.41 85.59
Я пытаюсь получить только цифры. Я попытался использовать следующее регулярное выражение:
/(\bChan\s[0-9]\b|\b,Chan\s[0-9]\b):\s|\s/
в соответствии с regextester.com я должен ожидать 16 строк, но я получаю 41, когда я пытаюсь напечатать длину переменной, которая содержит разделенную строку.
Мой код:
var x = values.value;
var v = x.split(/(\bChan\s[0-9]\b|\b,Chan\s[0-9]\b):\s|\s+/);
console.log(v.length);
Дополнительный вопрос: я пытался опустить|\s
в конце разделить строку наchan #
строка. Это делит его, я получаю длину 9, когда я пытаюсь распечатать их, я все еще могу распечатать разделитель, который я использовал,Chan #:
Я думал, что возвращаемое значение split это просто значения между разделителем, который я использовал, а не сам разделитель?