$("#topNav" + $("#breadCrumb2nd").text().replace(" ", "")).addClass("current");
Это фрагмент из моего кода. Я хочу добавить класс к идентификатору после получения свойства текста другого идентификатора. Проблема в том, что идентификатор, содержащий нужный мне текст, содержит пробелы между буквами.
Я хотел бы удалить пробелы. Я попробовал TRIM()
и , REPLACE()
но это только частично работает. REPLACE()
Удаляет только 1 - е место.
javascript
jquery
Сесил Теодор
источник
источник
.replace(/\s+/g, '')
что совершенно нормально для меня.x = " Many spaces before and after "
y = x.replace(/(^\s+|\s+$)/g, "")
The^\s
средства пробельные после начала строки, с\s$
помощью пробела в конце строка,|
для или / или в группе, аg
модификатор объясняется в комментариях выше. Вам также нужны+
квантификаторы после каждого,\s
поскольку вы хотите захватить один или несколько экземпляров пробелов.Заменит только первый пробел , это включает в себя пробелы, табуляции и новые строки.
Чтобы заменить все пробелы в строке, вам нужно использовать глобальный режим
источник
+
ничего не добавляет, так как мы уже используемg
(глобальный) модификаторИспользование
String.prototype.replace
с регулярным выражением, как упоминалось в других ответах, безусловно, является лучшим решением.Но, просто для удовольствия, вы также можете удалить все пробелы из текста, используя
String.prototype.split
иString.prototype.join
:источник