@Zodtv

Как отсортировать строки?

Есть строки вида
Улица: Московская | Дом: 4
Улица: Западкая | Дом: 5

Каждая с новой строки(\n). Помогите со скриптом, который бы убирал лишнее и оставлял только название улицы и номер дома.
  • Вопрос задан
  • 100 просмотров
Пригласить эксперта
Ответы на вопрос 1
Shugich
@Shugich
Фронтенд-разработчик
Если я правильно понял, то вот ваше решение:

const data = `
Улица: Московская | Дом: 4
Улица: Западкая | Дом: 5
`;
const cleanedData =  data.replace(/Улица: /g, '').replace(/ \| Дом:/g, '')
Это же на codepen

И еще вариант более навороченный:
const data = `
Улица: Московская | Дом: 4
Улица: Западкая | Дом: 5
`;

// Получаем массив объектов улиц и дмов
const cleanedData = data.replace(/Улица: /g, '').trim().split(/\n/g).map(str => {
  const [ street, house ] = String(str).trim().split(/ \| Дом: /);
  return { street, house };
}); // [ { street: 'Московская', house: '4' }, { street: 'Западная', house: '5' } ];

// Собираем как нам надо
const formatedData = cleanedData.reduce((str, cur) => `${str}\n${cur.street}, ${cur.house}`, '');

console.log(formatedData);
// Московская, 4
// Западкая, 5
Тоже самое на codepen
Такой подход позволяет как угодно форматировать данные, но, конечно, работает медленнее.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Александрия Москва
от 200 000 до 250 000 руб.
Foodtronics Москва
от 100 000 до 200 000 руб.
Алгоритмика Москва
от 120 000 до 200 000 руб.
21 авг. 2019, в 18:32
5000 руб./за проект
21 авг. 2019, в 18:21
1000 руб./за проект