Как внутри 500 html-файлов найти все числа больше 900?
Привет!
У меня есть 500 html-файлов, внутри куча JS, создающего разные объекты (текст-боксы, кнопки и проч.)
Мне нужно найти все объекты, расположенные дальше 900 точек. Фактически, нужно найти все строки вида «запятая, число больше 900, запятая». Дальше я уже вручную их перенесу или удалю.
Подозреваю, что Notepad++ мог бы справиться, но я совершенно не понимаю regexp.
Буду благодарен за любые разумные способы облегчить мне жизнь.
Реальзация regexp в notepad++ бедная, поэтому в 1 поиск не получится, но если диапазон 900+ разумный, а не до бесконечности, то можно сделать в 2-3 запроса:
3-значные числа: ,\s*9\d\d\s*,
4-значные числа: ,\s*[1-9]\d\d\d\s*,
5-значные числа: ,\s*[1-9]\d\d\d\d\s*,
В Notepad++ можно так же можно использовать это выражение ",9[0-9][0-9]\,|\,[0-9]{4,}\," без кавычек разумеется (кстати, хитро составлено, хорошо что не нужны числа больше 456628483334 =) ).
2JeanLouis: К сожалению, в notepad++ не работает ни оператор или (|), ни квантификаторы ({4,}) в виду неполной реализации регулярных выражений. Я ниже написал возможный обход ограничения.
2JeanLouis: если бы стояла задача печатать числа больше 456628483334, я бы предложил выбрать все числа из 12ти знаков, отделив числовую часть в группу и передать её на сравнение в awk
Правильно сформулированная задача — половина решения. Что за «дальше 900 точек»? Если речь о контролах, которые видны в окне браузера ниже («дальше»?) 900 точек от верхнего края окна? Есть парочка решений, основанная на автоматизации обработки содержимого окна браузером и вычисления любых визуальных параметров. Почему я так спрашиваю — потому что если нужно просто найти числа в текстовом файле, то я бы не стал вести речь о пятистах файлах, да и про html с javascript'ом тоже не стал писать. В заблуждение вводит.
Если речь идёт именно о простом поиске по тексту без учёта, например, атрибутов html-ных тегов, то посоветую запускать предложенные регулярные выражения в Editpad pro. Очень мощный текстовый редактор и регулярки он все понимает.