@alexsteadfast
I am noob

Как написать регулярное выражение для js кода, которое удаляет все символы и слова из 4 и менее букв?

Пример:
Есть строка = Благовещенский р-н, Степное Озеро рп, Попова ул, 14
Необходимо преобразовать её в = Благовещенский Степное Озеро Попова 14
  • Вопрос задан
  • 143 просмотра
Решения вопроса 2
dollar
@dollar
Делай добро и бросай его в воду.
var s = 'Благовещенский р-н, Степное Озеро рп, Попова ул, 14';
var test = s.replace(
  /(?:[^а-яА-ЯёЁ\w]|^)[а-яА-ЯёЁa-zA-Z.,-]{1,4}(?=[^а-яА-ЯёЁ\w]|$)/g,
  '');
console.log(test); //Благовещенский Степное Озеро Попова 14
Ответ написан
@StockholmSyndrome
const result = str
  .replace(/([а-яa-zё-]+).*?(\s|$)/gi, (r, s) => s.length <= 4 ? '' : r)
  .replace(/[^а-яa-zё\w\s-]/gi, '');
console.log(result);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы