English
RQ Search and Replace is easy to use text replacement utility for Windows
Programming and design: Andrew Shelkovenko.
RQ Search and Replace
is a shareware
software.
HomePage -
http://mira.xeno.ru
You can download the latest version of
RQ Search and Replace from
http://mira.xeno.ru/rqsr.zip
http://mira.home.line1.ru/rqsr.zip
Documentation -
http://mira.xeno.ru/helpe.zip
Программа
|
С версии 1.53
без регистрации программа обрабатывает файлы размером не более
8 кб или не более 1
файла любого размера за один пуск (см. в меню HELP-Limitation method). Для полного использования функций требуется регистрация программы . |
В качестве фрагментов могут выбраны
Обрабатываются файлы из выбранного каталога
совпадающие с указанной маской.
Возможно редактирование загруженного файла и поиск в
нем.
Также программа выполняет следующие
операции:
Поддерживаются кодировки Dos-866 с использованием
шрифта Terminal и KOI8-R со шрифтом Arial KOI-8.
Поддерживается поиск и замена в файлах с кодировкой
UTF8.
Внешний вид главного окна программы

1. Выбрать при помощи кнопки
нужный каталог , выбрать маску файлов.
![]() |
---- Выбор каталога ---- Выбор маски файла ---- Список обрабатываемых файлов |
Маску файла можно выбрать по щелчку правой кнопкой мыши из
выпадающего списка.
Для выбора какой-нибудь файл должен быть подсвечен!
![]() |
Выбрать
расширение - выбрать все файлы с расширением, как у Обновить список - обновить список файлов в директории. |
Могут обрабатываться файлы из выбранного каталога
и всех подкаталогов.
Для этого необходимо установить галочку "Включая поддиректории".
В открывшемся окне будет сформирован список файлов, которые подлежат обработке.
Можно исключить из обработки отдельные файлы (сняв соответствующую галку) или
целиком поддиректории, используя кнопки "+" и "-".

2. В
таблице поиска и замены
выбрать тип объекта- Блоки, Строки и т.п.
выбрать тип операции- Заменить,
Удалить
внести в таблицу нужные фрагменты поиска и замены
Для выбора операции или объекта необходимо
сделать два клика мышкой по ячейке в столбце "Операция" или "Объект". Появится
стрелка выпадающего списка, после нажатия на которую откроется список доступных
объектов или операций. Необходимо нажать на нужном пункте и он будет помещен в
ячейку таблицы.
Для операций с тегами необходимо
также выбрать ключи поиска ( и удаления при операции удаления тегов). Ключи
поиска можно выбрать из выпадающего списка в ячейке поиска, а удаления - в
ячейке замены или внести вручную.
Для операций с "обрамленными" блоками (блоками текста,
находящимися между заданными последовательностями символов)
необходимо задать начальную и конечную последовательности символов, между
которыми будет находиться блок текста. Если выбран объект
"Блок заключенный в .." ("обрамленный"
блок), то ячейка поиска будет содержать два поля - для начальной и конечной
последовательности. После заполнения этих полей, данные будут сохранены в ячейке
таблицы, причем поля будут разделены символами
" <---> ".

Заполнять ячейки поиска и
замены можно несколькими способами.
Текст печатается в редакторе таблицы (находится ниже таблицы) и тем самым вводится в выбранную ячейку Поиска или Замены. Для выбора ячейки (подсветки) необходимо кликнуть на ней мышкой.
Требуемый файл открывается в
редакторе файла
( двойным щелчком мыши на файле в списке справа).
В окне редактора выделяется требуемый фрагмент текста и через выпадающее (по
нажатию правой кнопки мыши) меню заносится в ячейку
Поиска или Замены.
Через выпадающее меню
редактор файла также доступно:
Поиск - ручной поиск подсвеченного фрагмента в текущем файле. Поиск
следующего вхождения осуществляется кнопкой ПОИСК (справа).
В верхний (нижний) регистр - перевести подсвеченный фрагмент в верхний
или нижний регистр. Можно выделить весь текст.
Для предотвращения случайного изменения текста в ячейке таблицы
редактирование ячеек данной строки может быть запрещено. Для этого надо
поставить галочку во второй ячейке соответствующей строки.
Поля "Кодировка" заполняются
автоматически и соответствуют кодировке открытого файла.
Таблицу можно заполнять в произвольном порядке.
|
В операциях поиска и замены будут участвовать только строки, отмеченные галочкой. |
Для удаления всех данных из таблицы
необходимо выбрать в меню пункт "Таблица
-Очистка таблицы" .
Фрагменты поиска и замены могут быть
многострочными.
Возможны операции с различными объектами:
Внимание!
Порядок выполнения операций не соответствует порядку операций в таблице.
Операции выполняются в следующем порядке
(в следующих версиях планируется сделать этот список настраиваемым)Учет регистра.
Все операции кроме блочных могут выполняться с учетом или без учета регистра.
Блочные операции всегда выполняются с учетом регистра.
Под целым словом понимается последовательность букв, ограниченная НЕ-буквами.
НЕ-буквы - это один из символов
cr - возврат каретки (ascii 13)
lf - перевод строки (ascii 10)
",./\| !@#$%^&*()+=-?><~`;:[]{}'
ht - hottabs (ascii 9)
Для блока
текста и слова, "обрамленного" блока:
Заменить - замена фрагмента текста в
выбранных файлов.
В тексте ищутся фрагменты, содержащиеся в ячейке "Поиск" и заменяются на
фрагменты из ячейки "Замена"
Удалить
- удаление фрагмента текста из выбранных файлов.
В тексте ищутся фрагменты, содержащиеся в ячейке "Поиск" и удаляются.
Вставить после - вставка "фрагмента
замены" после "фрагмента поиска"
Вставить до
- вставка "фрагмента замены" до "фрагмента поиска"
1. Во фрагменте поиска может содержаться пустая строка (символы перевода
каретки)
2. Для "обрамленного блока" при выполнении операции удаления в ячейке
Замены может указываться текст, который должен содержаться в этом искомом
блоке.
Если такой текст содержится, то операция выполняется.
Например.
Ищется блок, заключенный между ААА и БББ, и в котором должен
содержаться текст bzzz.
Текст
АААwwwwwwБББ
Блок wwwwww
не будет удален.
Текст
АААww
bzzzБББ
Блок
ww
bzzz
будет удален.
3. Поиск следующей открывающей скобки
начинается с первой позиции закрывающей скобки.
Например.
Ищется блок, заключенный между ААА и ААА
АААwwwww11АААwwwww22АААwwwwwwААА
В этом случае будут найдены и
wwwww11
и
wwwww22
и
wwwww33
В следующих версиях
будет настраиваемо.
Для строки:
Заменить - замена данных строк в
выбранных файлах.
В тексте ищутся строки, содержащие фрагмент из ячейки "Поиск" и эти строки
целиком заменяются на фрагмент из ячейки "Замена"
Удалить
- удаление данных строк в выбранных файлах.
В тексте ищутся строки, содержащие фрагмент из ячейки "Поиск" и эти строки
целиком удаляются.
Вставить после...
- вставка фрагмента или строки замены
после строки поиска.
В тексте ищутся строки, содержащие фрагмент из ячейки "Поиск", и в конец
строки дописывается блок текста (не строка !!!)
из ячейки "Замена".
Чтобы добавить новую строку после указанной, необходимо в ячейку
"Замены" добавить пустую строку перед фрагментом, переведя курсор
в начало фрагмента замены и нажав клавишу Enter.
Вставить до... - вставка фрагмента или
строки замены до строки поиска.
В тексте ищутся строки, содержащие фрагмент из ячейки "Поиск", и в начало
строки дописывается блок текста (не строка !!!)
из ячейки "Замена". Чтобы фрагмент из ячейки "Замена" добавился в новую строку
перед указанной, необходимо добавить пустую строку в ячейку
"Замены" после фрагмента, переведя курсор в конец фрагмента
замены и нажав клавишу Enter.
Например.
Ищется строка, содержащая фрагмент поиска АВС, и перед ней вставляется
фрагмент замены 123.
Результат.
Найдена строка
zzzzzABCzzzzz
Строка после замены будет выглядеть как 123zzzzzABCzzzzz,
то есть 123 добавился к существующей строке.
Если в ячейке замены в конце фрагмента замены нажать
Enter (добавив тем самым перевод строки),
то в результат после замены будет
следующим
123
zzzzzABCzzzzz
т.е. между 123 и
zzzzzABCzzzzz будет добавлен перевод строки.
Внимание!
Если в какой-нибудь следующей строке в таблице поиска и
замены будет указано удаление строки, содержащей ABC,
то будет удален весь новый фрагмент
123
zzzzzABCzzzzz
так как программа считает, что он находится в одной строке
Для HTML тегов:
Примечание 1.
Под HTML тегом здесь понимается последовательность
вида
<[ ]имя_тега[ ]имя_атрибута[ ]=[ ]значение_атрибута[
][...] >
[ ] - один или более пробелов
знак = и значение_атрибута могут отсутствовать
ищутся теги, удовлетворяющие
условию поиска и выполняются операции
Удалить тег - удаляется тег и соответствующий закрывающий тег.
Подробнее.
Заменить атрибут - значение атрибута заменяется на заданное.
Подробнее.
1. Ищется тег, удовлетворяющий
условию поиска
2. В найденном теге ищется атрибут, имя которого совпадает с заданным в
ячейке замены.
3. Данному атрибуту присваивается значение, заданное в ячейке замены.
Пример 1.
ячейка поиска <meta
http-equiv="Content-Type">
ячейка замены
charset=windows-1251
Будут искаться теги
meta,
содержащие атрибут http-equiv="Content-Type"
и если в найденном теге присутствует атрибут
charset, то ему будет присвоено значение
windows-1251
Пример 2.
ячейка поиска <meta charset=windows-1251><>AND
ячейка замены
charset=koi8-r
Будут искаться теги
meta,
содержащие атрибут charset=windows-1251
и
атрибуту charset
будет присвоено значение
koi8-r
(см. также проект HTMLExample.rqs )
Удалить атрибут
- удаляется атрибут с заданным именем/значением
Добавить атрибут - добавляется атрибут с заданным
именем/значением
Если атрибут с таким именем уже имеется, то его значение изменяется на заданное,
без добавления нового атрибута.
В верхний регистр - значение атрибута переводится в верхний регистр
Подробнее.
1. Ищется тег,
удовлетворяющий условию поиска
2. Если в найденном теге присутствуют атрибуты, перечисленные в ячейке
замены, то значения этих атрибутов переводятся в верхний регистр. Имена
атрибутов не изменяются. Значения других атрибутов не изменяются.
Если в ячейке замены вместо имен атрибутов указан символ * , то изменяется
регистр значений всех атрибутов. Другие маски пока не поддерживаются.
Пример 1.
ячейка поиска <a target=_blank
><>OR
ячейка замены
href target
В найденном теге значение атрибутов
href ,
target
переводятся в верхний регистр.
В нижний регистр
- значение атрибута переводится в нижний регистр
Примечание.
При обработке найденных тегов двойные (и
более) пробелы внутри тегов заменяются на одинарные.
Примечание.
При сравнении значений атрибутов кавычки и апострофы
отбрасываются.
Т.е значения атрибутов
onClick="this.setHomePage('http://www.ru');
return false;"
onClick='this.setHomePage("http://www.ru"); return false;'
onClick=this.setHomePage('http://www.ru'); return false;
считаются равными.
Могут быть установлены следующие
условия поиска:
1. Эквивалентность (равенство) тегов
Ищется тег такого же типа, содержащий такой же набор атрибутов
Порядок атрибутов, количество пробелов - не имеет значения.
В ячейке поиска указывается тег и условие поиска EQU, например
<IMG SRC="bluprev.gif" WIDTH = 32 HEIGHT = 32 BORDER = 0
ALT="Previous Page"><>EQU
(здесь последовательность <> - просто разделитель )
Если тег поиска указан без атрибутов, то тег с таким
же именем и без атрибутов будет считаться подходящим.
2.Условие И
Искомый тег должен содержать в себе все признаки поиска - атрибуты со
значениями.
В ячейке поиска указывается тег + <>And, например
<IMG SRC="bluprev.gif" WIDTH = 32 HEIGHT = 32 BORDER = 0
ALT="Previous Page"> <>And
Ищется тег с таким же именем, набор атрибутов которого должен содержать все
указанные атрибуты с такими же значениями.
Если тег поиска указан без атрибутов, то любой тег с таким
же именем будет считаться подходящим.
3. Условие ИЛИ
Искомый тег должен содержать в себе хотя бы один из признаков поиска - атрибут с
таким же значением.
В ячейке поиска указывается тег + <>OR
Например <script
defer =1234><>OR
Если тег поиска указан без атрибутов, то любой тег с таким же именем будет
считаться подходящим.
4. Условие И-НЕ
Искомый тег НЕ должен содержать в себе ни одного из признаков поиска В ячейке
поиска указывается тег + <>NOT
Если тег поиска указан без атрибутов, то любой тег с таким
же именем будет считаться подходящим.
5. Условие ИЛИ-НЕ
Искомый тег НЕ должен содержать в себе хотя бы один из признаков поиска
В ячейке поиска указывается тег + <>NOR
Если тег поиска указан без атрибутов, то любой тег с
таким же именем будет считаться подходящим.
Если в найденном теге нет атрибутов, то такой тег будет считаться
подходящим.
6. Если условие поиска (<>XXX) не задано , то по умолчанию присваивается
<>OR

Нажмите кнопку Add to grid для
сохранения выбранных настроек в таблицу поиска и замены.
Возможен ручной поиск и редактирование загруженного файла.
Для ручного поиска в выбранном файле необходимо ввести фрагмент поиска в поле
ввода и нажать кнопку Поиск.
![]()
Если поле ввода пусто, то будет искаться фрагмент текста,
находящийся в редакторе
таблицы.
Для сохранения фрагмента поиска необходимо после ввода нажать клавишу
Enter.
Использованные ранее фрагменты поиска в дальнейшем можно выбирать из выпадающего
списка. Результат поиска будет отображаться в
редакторе файла
подсветкой найденного фрагмента.
3. Перед проведением поиска и замены можно выбрать опции в пункте меню "Операции"
1. Преобразовать Unicod
символы
- преобразует представление символов кириллицы из
вида &#xxxx
в "нормальный"
2. Заменять 0-31 символы - заменяет символы с ASCII кодами 0-31 на
выбранный символ.
а также опции в меню "Настройки"
1. Сохранять копии - сохраняет копии
преобразуемых файлов в соответствующих подкаталогах :
"Original" - каталог с копией оригинальных файлов.
Перед началом обработки (поиска и замены) оригинальные файлы сохраняются в этом
каталоге.
Если такой каталог уже существует, то запрашивается разрешение на сохранение.
"LastCopy" - переход в каталог с последней сохраненной копией.
Если обработка происходит несколько раз, то в этом каталоге хранится последняя
копия текущего каталога.
2. Запрашивать подтверждение
Возможность выполнять операции без дополнительного подтверждения.
3. С учетом регистра - учитывать регистр.
Операции с блоками всегда проводятся с учетом регистра.
![]() |
Для начала проведения поиска и
замены необходимо нажать кнопку
Пуск. Если данные в таблице поиска и замены неверны, то будет выдаваться предупреждающее сообщение. Ход процесса поиска отображается в редакторе лога и на панели лога. Процесс поиска можно остановить, нажав кнопку Стоп. . |
Сохранение проекта
Содержание таблицы, текущая директория, маска файлов могут быть сохранены для
последующей работы. Это можно сделать через пункт меню Проект-Сохранить
(Сохранить как..)
Внимание!
При загрузке проектов созданных в старых версиях программы необходима ручная
корректировка проекта. Используйте пункт меню "Таблица".
Отмена
изменений
Сохранение копий и восстановление исходных файлов
осуществляется через пункт меню "Копии". Возможен быстрый
доступ к папкам с копиями исходных и обработанных файлов, их удаление,
копирование.
Выбор языка интерфейса
Файлы с настройками языка находятся в папке \lang\
В дистрибутиве в этой папке находятся
lang.ini - файл со списком используемых языков и выбранным языком.
english.lng - файл с названиями пунктов меню, сообщениями и т.д. на английском
языке
russian.lng - файл с названиями пунктов меню, сообщениями и т.д. на русском
языке
spain.lng - файл с названиями пунктов меню, сообщениями и т.д. на испанском
языке (частично)
Чтобы добавить новый язык необходимо скопировать файл
english.lng под новым именем (например
NewLang.lng )в той же
папке lang. Затем перевести названия стоящие после
знака равенства на новый язык.
Например:
Было
File=File
Project=Project
Grid=Grid
Для нового языка стало
File=Файл
Project=Проект
Grid=Таблица
Затем в файл lang.ini следует добавить строчку вида:
NewLang=NewLang,
где NewLang - название нового языка
(должно совпадать с именем файла
NewLang.lng).
также можно исправить строчку
default=NewLang
Тогда после запуска программы будут загружен язык из файла
NewLang.lng
После смены языка в настройках требуется перезапустить программу, чтобы изменения вступили в силу.
Некоторые советы
Загруженный в редактор файл можно редактировать вручную и сохранять изменения через меню.
Подсветка синтаксиса HTML файлов очень медленна. Чтобы прервать процесс подсветки надо кликнуть по полю окна редактора.
Выделенные фрагменты можно перетаскивать из редактора в редактор с помощью мыши.
Редактор лога можно использовать для хранение фрагментов текста.
При нажатии кнопки
появляется
панель выбора каталога.
"Горячие" директории можно выбирать и сохранять в соответствующем
комбобоксе.

Выбранный файл можно запустить (если с его
расширением ассоциирована какая-нибудь программа ) дважды кликнув на строку с
именем файла под меню.
![]()
Для сохранения содержания таблицы, горячих директорий необходимо в меню нажать кнопку Сохранить настройки. При следующем запуске программы будут загружены последние сохраненные настройки.
Описание Меню
![]() |
Email Bug пока не поддерживается. |
![]() |
Plain Text - в текстовом
формате RTF - просмотр файлов *.rtf HTML Filtered - убирает теги из *.html файлов По формату - просмотр в окне редактора *.html файлов . Включить\.выключить перенос слов (в данной версии не работает) |

Для формирования оглавления необходимо выбрать в списке только файлы HTML- формата. В противном случае файл оглавления может быть не сформирован.
1. Подсветка синтаксиса HTML
файлов очень медленна. Чтобы прервать процесс подсветки надо кликнуть по полю
окна редактора.
2. После остановки подсветки иногда не появляется вертикальный скролл бар.
Чтобы он появился необходимо изменить размер редактора лога, потянув за красный
горизонтальный разделитель.
3. Сообщения в редактор лога (нижнее окно) выводятся шрифтами разных цветов, в
том числе и белого. На светлом фоне надписи могут быть не видны.
4. При сбоях в процессе обработки кнопки Пуск, Стоп могут остаться
подсвеченными.
5. Файлы размером более 2048 к не редактируются, только показываются.
6. Могут быть проблемы с размером шрифта DOS при вводе, но после сохранения
файла размер шрифта будет нормальный.
7. Для нормальной работы с DOS кодировкой под Windows XP необходимо установить
файл riched32.dll из дистрибутива Windows 98 в рабочий каталог программы
и файл шрифта 8514OEM.FON в каталог codePage в рабочем каталоге программы.
8. Иногда самопроизвольно переключает раскладку с русского на английский при
вводе текста в DOS кодировке. Можно попробовать в свойствах клавиатуры назначить
русский язык по умолчанию.
9. Чтобы загружать и просматривать текст в бинарных файлах, надо установить
галку в меню Операции-Заменять 0-31 символы
10 .С файлами более 5-8Мб работать практически невозможно из-за низкой
скорости загрузки.
Замечания и предложения
просьба направлять по адресу diakin@narod.ru
Шелковенко Андрею Васильевичу.