Поиск и замена текста с кавычками через регулярные выражения

Обсуждение программы nhrt - замена текста в файлах (прежнее название nhrplc)
bursoft
Сообщения: 8
Зарегистрирован: 20 фев 2017, 10:02

Re: Поиск и замена текста с кавычками через регулярные выражения

Сообщение bursoft »

nhutils писал(а):Если заменяемый текст статический, то больше подходят параметры -t (-text) или -et (-escapetext). И поскольку внутри замещающего текста есть кавычки с соседствующими пробелами, то остаётся только использовать -et (-escapetext):
нет, замещающий текст не статический, а форматированный, я намеренно убрал $1, $2 и $3 чтобы разгрузить выражение
полный пример я описывал в первом посте топика

nhutils
Сообщения: 582
Зарегистрирован: 09 дек 2009, 18:08
Контактная информация:

Re: Поиск и замена текста с кавычками через регулярные выражения

Сообщение nhutils »

bursoft писал(а):нет, замещающий текст не статический, а форматированный, я намеренно убрал $1, $2 и $3 чтобы разгрузить выражение
полный пример я описывал в первом посте топика
Ааа, тогда нужен новый параметр -fet, он поддерживает и capture group регулярных выражений, и escape text!
Команда:

Код: Выделить всё

nhrt -list:C0248_2-list.txt -cp:utf8bom -o:d C0248_2.txt
nhreplace v2.9.0.10 * Text Replace utility * http://nhutils.ru/blog/en/nhreplace/
C0248_2.txt UTF-8_BOM : 1
Файл-список:

Код: Выделить всё

-sre:(<\S*[^<]*)(android:id=\"@id/(?:[Aa][Dd][Ss]|[Bb][Aa][Nn][Nn][Ee][Rr]|[Aa][Dd][Vv][Ii][Ee][Ww]|[Aa][Dd][Vv][Ii][Ee][Ww]Layout)\")[^<]*(\"\s?/?>) -fet:"$1$2 android:layout_width=\"0.0dip\" android:layout_height=\"0.0dip\" android:visibility=\"gone$3"

bursoft
Сообщения: 8
Зарегистрирован: 20 фев 2017, 10:02

Re: Поиск и замена текста с кавычками через регулярные выражения

Сообщение bursoft »

nhutils писал(а):Ааа, тогда нужен новый параметр -fet, он поддерживает и capture group регулярных выражений, и escape text!
точно, -fet подходит, тестирую дальше!
спасибо)

bursoft
Сообщения: 8
Зарегистрирован: 20 фев 2017, 10:02

Re: Поиск и замена текста с кавычками через регулярные выражения

Сообщение bursoft »

спасибо еще раз, версия nhrt-v2.9.0.10 работает как положено!
но не все пока могут в этом убедиться, так как ссылка на скачивание на странице http://nhutils.ru/blog/nhrt/download/ не работает

и еще вопрос. в архиве с версией 2.9.0.10, в примере Samples\Mixing code pages\go.cmd, в качестве кодировки указано utf8, а в документации http://nhutils.ru/blog/nhrt/help/ упоминание о такой кодировке отсутствует.
я то знаю, что это соответствует кодировке UTF-8_BOM, но у неподготовленного пользователя может возникнуть вопрос, почему utf8 означает UTF-8_BOM, а не UTF-8.
наверное, стоит указать в документации об этом.
также, при вызове утилиты без параметров выскакивает небольшая помощь, так вот там программа все еще именуется nhrplc, и описаны не все параметры.

еще раз спасибо за крутую программу, особенно уникальна работа с нашими кодировками, вроде 866.

nhutils
Сообщения: 582
Зарегистрирован: 09 дек 2009, 18:08
Контактная информация:

Re: Поиск и замена текста с кавычками через регулярные выражения

Сообщение nhutils »

Спасибо за дельные и подробные комментарии!

Со ссылкой, действительно, получилось нехорошо – в спешке даже не проверил, что файла нет. Сейчас исправлено.

Что касается значения utf8, оно даёт тот же эффект, что и UTF-8, так было и в предыдущих версиях. Сейчас это подразумевается косвенно, через указание необязательности символов тире/подчеркивания, сделаю более развёрнуто.

Хвосты от nhrplc в самой программе и в приложенных примерах будут исправлены в следующей версии, примерно в течение месяца, вместе с добавлением UCS-2 BE.

Спасибо!

Закрыто