Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.12.2020, 01:50
Профессор
Отправить личное сообщение для savsoft Посмотреть профиль Найти все сообщения от savsoft
 
Регистрация: 03.01.2019
Сообщений: 162

Javascript regex и replace
Всем привет,

Есть строки, в которых после ` или ' может быть пробел. Нужно только этот пробел убрать. То есть убрать пробел, если слово оканчивается на апостроф или одинарную кавычку, глобально по всей строке. Никак не получается.

str.replace(/'\s/g, "'") не работает.
Ответить с цитированием
  #2 (permalink)  
Старый 08.12.2020, 02:24
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

let str = 'aaa` ';
str = str.replace(/['`]\s$/, "'");
console.log(str, str.length)
Ответить с цитированием
  #3 (permalink)  
Старый 08.12.2020, 02:36
Профессор
Отправить личное сообщение для savsoft Посмотреть профиль Найти все сообщения от savsoft
 
Регистрация: 03.01.2019
Сообщений: 162

Сообщение от Vlasenko Fedor Посмотреть сообщение
let str = 'aaa` ';
str = str.replace(/['`]\s$/, "'");
console.log(str, str.length)
Извините, я не совсем корректно сформулировал вопрос, слово или слова с апострофом в конце находятся не в конце строки.

Мне нужно 'aaa` b cccc' превратить в 'aaa`b cccc'
Таких подстрок в строке может быть больше одной.
Ответить с цитированием
  #4 (permalink)  
Старый 08.12.2020, 02:44
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

Тогда уберите символ конца строки и добавьте флаг глобальной замены
let str = "'aaa` b cccc' ddd` rrr";
str = str.replace(/['`]\s/g, "'");
console.log(str)
Ответить с цитированием
  #5 (permalink)  
Старый 08.12.2020, 03:05
Профессор
Отправить личное сообщение для savsoft Посмотреть профиль Найти все сообщения от savsoft
 
Регистрация: 03.01.2019
Сообщений: 162

Сообщение от Vlasenko Fedor Посмотреть сообщение
Тогда уберите символ конца строки и добавьте флаг глобальной замены
let str = "'aaa` b cccc' ddd` rrr";
str = str.replace(/['`]\s/g, "'");
console.log(str)
Все работает, спасибо.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Книга: JavaScript. Сильные стороны Magneto Учебные материалы 16 21.04.2013 15:28
Интерпретатор Java на JS kobezzza Оффтопик 24 11.10.2012 18:32
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34
Регулярное выражение ошибка "invalid quantifier", JavaScript, replace. abstract Общие вопросы Javascript 6 20.09.2010 13:51