Notepad ++ удаляет строки с интервалом (например, с помощью Skip и Take) - PullRequest
0 голосов
/ 04 августа 2020

Я хотел бы сохранить 1-е minQty, maxQty, stepSize, но удалить 2-е minQty, maxQty, stepSize. Возможное решение в C# - взять 5 строк и затем пропустить 3 строки. Есть ли что-то подобное в Notepad ++.

Обычно я бы решил эту проблему, добавив в закладки строки, содержащие определенные строки, а затем удалив такие строки без закладок ( Удалить все строки (не) соответствующие регулярному выражению, используя Notepad ++ ). Но здесь это не сработает, поскольку строки одинаковые.

"symbol": "ETHBTC",
                "filterType": "LOT_SIZE",
                "minQty": "0.00100000",
                "maxQty": "100000.00000000",
                "stepSize": "0.00100000"
                "minQty": "0.00000000",
                "maxQty": "9201.00570633",
                "stepSize": "0.00000000"
"symbol": "LTCBTC",
                "filterType": "LOT_SIZE",
                "minQty": "0.01000000",
                "maxQty": "100000.00000000",
                "stepSize": "0.01000000"
                "minQty": "0.00000000",
                "maxQty": "33144.83294363",
                "stepSize": "0.00000000"

Есть у кого-нибудь идеи? Спасибо!

1 Ответ

0 голосов
/ 04 августа 2020

Вы можете захватить строки в группе, которую хотите сохранить, начиная с filterType и следующих 3 строк. Затем сопоставьте 3 строки после него, которые вы хотите удалить.

В качестве замены используйте первую группу захвата $1

("filterType":\h+"LOT_SIZE",(?:\R\h+"[^"]+":\h+"[^"]+",?){3})(?:\R\h+"[^"]+":\h+"[^"]+",?){3}

Regex demo

введите описание изображения здесь

...