Інструмент пошуку та заміни Mac OS X з підтримкою регулярних виразів


9

Я шукаю інструмент графічного пошуку / заміни GUI на основі вираження, який здатний обробляти декілька файлів / підкаталогів, щось на зразок grepWin, але для Mac OS X.

PS. Я знаю про греп і мені не потрібен редактор, а лише окремий інструмент.


Komodo Edit ( activestate.com/komodo-edit ) має функцію "Знайти / замінити файли". Це безкоштовний редактор для Mac, Windows та Linux.
jsherk

Відповіді:


3

О, я також щойно це знайшов:

http://www.dprog.ch/home/products/find_and_replace_it/

Про пошук та заміну!

Потужна утиліта пошуку та заміни. Це дозволяє виконувати дуже складні пакетні заміни всередині текстових файлів будь-якого розміру. Він підтримує синтаксис регулярного вираження і десятки кодувань. Він має можливості сценарію, які дозволяють перетворювати на ходу текст заміни для кожного знайденого рядка. Він навіть обробляє пакетну обробку кодування файлів, а також типів кінцевих рядків.

Ось кілька ключових особливостей Find & Replace It !:

  • Знайдіть і замініть відразу декілька файлів
  • Підтримує регулярні вирази
  • Підтримується багато текстових кодувань
  • Забезпечує редактор regexp
  • Забезпечує попередній пошук і заміна
  • Пропонує сценарій інтерфейсу, який дозволяє трансформувати текст заміни на льоту
  • Багато інших функцій

Його розробив dProg - Філіп Докурт . Я ніколи його не використовував , тому прийміть цю рекомендацію із зерном солі!


12

Ви, напевно, шукаєте додаток GUI, але я можу рекомендувати команду терміналу. Perl може робити вбудовану заміну:

find . -type f -exec perl -p -i -e "s/SEARCH_REGEX/REPLACEMENT/g" {} \;

Це знайде всі файли в поточному каталозі та замінить на основі наданого регулярного виразу. Якщо вам потрібно змінити каталоги, простий спосіб - набрати: cd (переконайтеся, що після цього є пробіл), а потім перетягніть папку з Finder у вікно терміналу. Натисніть кнопку return і ви опинитеся в потрібній папці; потім запустіть команду perl вище.

Якщо ви хочете, щоб Perl зробив резервні копії перед заміною, запустіть:

find . -type f -exec perl -p -i.bak -e "s/SEARCH_REGEX/REPLACEMENT/g" {} \;

4
в будь-який час, коли я пропоную Perl у відповіді "SO" чи "SU", я не зволікаю без відповіді. Як це тут мабуть. :)
Ян C.

@Ian: Можливо, я повинен був використовувати синтаксис рубіну? ;-)
Джош

2
уявіть собі супер користувачів, які використовують регулярні вирази perl, це божевільно
mindless.panda

1

Я розумію, що вам не потрібен повноцінний редактор, але часто найкращі інструменти знаходяться в одному. TextMate має повну підтримку регулярних виразів і дуже добре обробляє файли та каталоги. Ще одне, про що я не пробував, але чув хороші речі - це TextWrangler .


дякую, я вже використовую Textmate, і це приголомшливо, але не як інструмент пошуку-заміни. "Чому немає чортової кнопки зупинки? !!" ( blog.johnjosephbachir.org/2007/10/01/… );))
користувач187291
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.