Я зазвичай використовую такий код у JavaScript, щоб розділити рядок на пробіли.
"The quick brown fox jumps over the lazy dog.".split(/\s+/);
// ["The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog."]
Звичайно, це працює навіть тоді, коли між словами є кілька пробілів.
"The quick brown fox jumps over the lazy dog.".split(/\s+/);
// ["The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog."]
Проблема полягає в тому, що у мене є рядок, що містить пробіли, що ведуть або відстають, і в цьому випадку отриманий масив рядків буде містити порожній символ на початку та / або в кінці масиву.
" The quick brown fox jumps over the lazy dog. ".split(/\s+/);
// ["", "The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog.", ""]
Усунути такі порожні символи - тривіальне завдання, але я б скоріше подбав про це в рамках регулярного виразу, якщо це взагалі можливо. Хтось знає, якими регулярними виразами я міг би досягти цієї мети?
split
використовується для розділення рядка, а не для його мутації . Подивіться, як обрізати рядок у JavaScript? .