Ответ 1
Вы можете использовать регулярное выражение replace:
str = str.replace(/ +(?= )/g,'');
Кредит: вышеупомянутое регулярное выражение было взято из Regex для замены нескольких пробелов одним пространством
Как я могу автоматически заменить все экземпляры нескольких пробелов одним пробелом в Javascript?
Я попытался связать несколько s.replace
, но это не кажется оптимальным.
Я также использую jQuery, если это встроенная функциональность.
Вы можете использовать регулярное выражение replace:
str = str.replace(/ +(?= )/g,'');
Кредит: вышеупомянутое регулярное выражение было взято из Regex для замены нескольких пробелов одним пространством
Существует множество вариантов регулярных выражений, которые вы могли бы использовать для достижения этого. Один пример, который будет хорошо работать:
str.replace( /\s\s+/g, ' ' )
См. этот вопрос для полного обсуждения этой точной проблемы: Regex заменить несколько пробелов на единое пространство
вы все забыли про квантификатор n {X,} http://www.w3schools.com/jsref/jsref_regexp_nxcomma.asp
здесь лучшее решение
str = str.replace(/\s{2,}/g, ' ');
Вы также можете заменить без регулярного выражения.
while(str.indexOf(' ')!=-1)str.replace(' ',' ');