Хочу поделиться историей из жизни, какую задачку я сегодня решала грепом, как у меня не работала регулярка и как именно я её отлаживала =)
Тестирую загрузку ГАР (справочник адресов от налоговой) в нашу систему. Для этого изучаю сам справочник. Он разбит по папкам-регионам, и в каждом набор файликов — дома, улицы, квартиры... Все они ссылаются на reestrobj, поэтому с этого файлика я и начала.
Для начала хочется посмотреть на данные, как они выглядят. Но как это сделать, если файлики весят слишком много и простой блокнот просто зависнет при попытке открыть reestrobj для Москвы или даже Адыгеи?
Тут есть 2 варианта:
- Сделать grep — выцепить первые 2000+ строк в отдельный файл. Потом открыть спокойноблокнотом и изучить
- Открыть файл мелкого региона, где мало данных.
Пойдем сначала по второму пути. Погуглим «гар коды регионов» — вот какая отличная статья попалась! Тут сразу видно, сколько весит каждый регион.
Ага, регион 08 весит мало, попробуем открыть его.
Смотрим в распакованном ГАР, и правда, не очень много:
![](https://lh4.googleusercontent.com/c3dYsSIXc0HsevLxXLyqjK700gly6JlLMVt9U0e4PG6855kATekSVABynYHba0gVJ7SKjV9tri0m0ErSVK1f7OFqu5xP_Y8qdPKkOISCXVPRuF5Y0EPwgfiqCGD2-qf40gXpcQBvWmzdTfE5BA)
Запихиваем этот файлик в Идею (IDEA — среда разработки), пока выглядит не ахти:
![](https://lh5.googleusercontent.com/Wx9zp-fSAjaSHvwNFV0lTLFtDX3JPhDahtoSjtJaJ0qdoMq2RI7DrB3Btx8naqammrfai7U8VCh-rPLJvfEv4H-IAv4zcTomk58kZZy7JVTG14cXrJMwDpq6eGiSBRNam6PHa9Hztlr2uu1NCw)
Реформат кода сделать нельзя, потому что файл слишком большой… Чтож, пойдем по пути грепа!