Есть ли разница между / \ s / g и / \ s + / g?

Когда у нас есть строка, содержащая пробелы:

var str = '  A B  C   D EF ';

и мы хотим удалить пробелы из строки (мы хотим это: 'ABCDEF' ).

И this:

str.replace(/\s/g, '')

, и this:

str.replace(/\s+/g, '')

вернут правильный результат.

Означает ли это, что + в данной ситуации лишний? Есть ли разница между этими двумя регулярными выражениями в этой ситуации (например, могут ли они каким-либо образом давать разные результаты)?


Обновление: Сравнение производительности - / \ s + / g быстрее . См. Здесь: http://jsperf.com/s-vs-s

73
задан Šime Vidas 11 May 2011 в 12:44
поделиться