Ответы пользователя по тегу Регулярные выражения
  • Как найти блоки?

    romash
    @romash
    web-разработчик
    blocks.push({
        id: /block-(\d+)/.exec(DOMBlocks[i].className)[1] * 1,
        ...
    });

    А вообще для хранения любых данных в верстке лучше использовать data-атрибуты
    <div :class="'block obj-block'" :data-id="block.id">
      </div>

    Понятия не имею, что это за шаблонизатор у вас, но думаю, смысл вы уловите
    Ответ написан
    Комментировать
  • Подсобите с регулярным выражением?

    romash
    @romash
    web-разработчик
    Ответ не верен, но я слишком долго его писал, так что мне жалко его удалять :D
    Вот так можно получить
    1) AAA(CCC(C1_1);A1_1);
    2) BBB(B1_1; B1_2);
    3) DDD(D1_1).

    Я не уверен, но, насколько мне известно, так как CCC(C1_1) уже находится в найденном (внутри AAA(CCC(C1_1);A1_1)), второй раз его вы не найдёте, для этого придётся повторять парсинг для группы 2 каждого включения.

    Также в примере вы можете увидеть, что тройное вложение под это правило уже не подойдёт. Вы можете расширить регулярку для отлавливания любого конечного количества вложений, но лично я бы не советовал их использовать для подобных задач. Отмечу, что в регулярках я шарю не очень, так что возможно мой совет некорректен, в таком случае прошу прощения.

    UPD: Изменил пример. Предыдущая регулярка искала AAA(bar; BBB(); foo) но путалась с AAA(BBB(); foo; DDD(); bar).
    Ответ написан
    4 комментария