2013-12-10 8 views
1

Как я могу заменить ТОЛЬКО пробелы в своем Javascript-коде? Исходный текст:regex - Заменить только пробелы

Good day, citizen, 

Your Barangay Clearance service request (<service request number>) has been updated to <request status>. You can proceed to the barangay office to follow up your request. 

Regards, 
CSP.ph Team 

Я только хочу заменить пробелы, а не те, что \ n. (извините, я не знаю термин haha)

Я использую это Regex var stringCut = txtMessage.replace(/\s\s+/g, "+");, но все же, с \ n также заменяется.

Любая помощь будет оценена по достоинству. Спасибо!

+0

\ х классов символов, который включает в себя любой символ пробела, включая пробел, табуляцию, перевод строки (символ новой строки), возврат каретки (также символ новой строки). Многие ошибаются, полагая, что \ s просто означает пробельный символ, но на самом деле описывает пробельный символ. – JonM

ответ

6

Вы можете использовать класс символов, например:

var stringCut = txtMessage.replace(/[ ]+/g, "+") 

или даже просто пространство само по себе, хотя это немного сложнее читать, на мой взгляд:

var stringCut = txtMessage.replace(/ +/g, "+") 

Если вы хотите заменить все пробельные символы кроме новая линия (\n), вы могли бы использовать что-то вроде этого:

var stringCut = txtMessage.replace(/((?!\n)\s)+/g, "+") 
+0

решил мою проблему. Спасибо! –

2

Это должно работать

textMessage.replace(/[ ]+/g, "+"); 
Смежные вопросы