aliasmark
@aliasmark

Как отсортировать строки по возрастанию алфавита находящиеся между определенных тегов?

Даны три строки разной длины обрамленные в div-ы расположенные в произвольном порядке,

<div><a href="https://google.ru/link/123abc/><img src="google.png"><br>Гугл</a></div>
<div><a href="https://ya.ru/link><img src="ya.png"><br>Яндекс</a></div>
<div><a href="https://rambler.ru/link/address/><img src="rambler.png"><br>Рамблер</a></div>


Критерий для сортировки - русские буквы между <br> и </a> , а именно, Гугл, Яндекс и Рамблер.
Как/какой программой отсортировать эти строки от а-Я сверху-вниз? Англ. алфавит, цифры, спецсимволы не участвуют.
  • Вопрос задан
  • 65 просмотров
Решения вопроса 1
@WAR_VIK
Вот так можно:
const print = s => console.log(s);
let s = `<a href="https://google.ru/link/123abc/><img src="google.png"><br>Гугл</a>`;
let s2 = `<a href="https://ya.ru/link><img src="ya.png"><br>Яндекс</a>`;
let s3 = `<a href="https://rambler.ru/link/address/><img src="rambler.png"><br>Рамблер</a>`;
let a = s.match(/(?<=<br>).+(?=<)/g)[0];
let b = s2.match(/(?<=<br>).+(?=<)/g)[0];
let c = s3.match(/(?<=<br>).+(?=<)/g)[0];
let arr = [[a, s], [b, s2], [c, s3]];
arr.sort((a, b) => a[0].charCodeAt(0) - b[0].charCodeAt(0));
print(arr);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы