Как удалить дополнительные пробелы с помощью JavaScript или jQuery?

Я добрался, элемент HTML содержит это:

  <!--Product Style-->  <div style="float: right; padding-top: 4px; padding-bottom: 5px;">  P6C245RO </div>  <div style="text-transform: uppercase; font-weight: bold; padding-top: 4px; padding-bottom: 5px;">  Style </div>  <div style="clear: both; border-top: 1px solid rgb(216, 216, 216); padding-top: 4px;">  <!--Product Description-->  <div style="font-size: 11px ! important;"></div>  <div style="background: url(&quot;http://ii.armaniexchange.com/ArmaniExchange/images/en_US/global/globalgraphics/bullet.gif&quot;) no-repeat scroll 0pt 4px transparent; padding-left: 12px;">fine tonal striped fabric</div>  <div style="background: url(&quot;http://ii.armaniexchange.com/ArmaniExchange/images/en_US/global/globalgraphics/bullet.gif&quot;) no-repeat scroll 0pt 4px transparent; padding-left: 12px;">epaulettes and sleeve tab</div>  <div style="background: url(&quot;http://ii.armaniexchange.com/ArmaniExchange/images/en_US/global/globalgraphics/bullet.gif&quot;) no-repeat scroll 0pt 4px transparent; padding-left: 12px;">metal logo plate on the chest pocket</div>  

Когда я считал его с помощью jQuery, я добираюсь .text() содержит много пробелов и/n, промежуточного текст, но без тегов HTML.

Как удалить все эти пробелы и возвратить чистый текст с помощью jQuery или чистого JavaScript?

26
задан Amr Elgarhy 24 May 2010 в 15:43
поделиться

2 ответа

element.text().replace(/\s+/g, " ");

Здесь используется регулярное выражение ( /.../ ) для поиска одного или нескольких ( + ) пробельных символов ( \ s ) по всему тексту элемента ( g , глобальный модификатор, который находит все совпадения, а не останавливается после первого совпадения) и заменяет каждое одним пробелом ( "" ) .

60
ответ дан 28 November 2019 в 06:15
поделиться

Вы можете удалить все экземпляры совпадающих пробелов и символов новой строки следующим образом

// Note: console.log() requires Firebug

var str = '    this  is \n    some text \r don\'t \t you    know?   ';
console.log( str );

str = str.replace( /[\s\n\r]+/g, ' ' );
console.log( str );

Затем очистить их и применить к вашему jQuery

$.trim( $element.text().replace( /[\s\n\r]+/g, ' ' ) )
4
ответ дан 28 November 2019 в 06:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: