Delete Chinese text after comparing two XML documents
-
Or how to set himself xmlTreeNav so he added only the missing lines, not to fully combine the two language files.
-
if you just want to remove all chinese texts between
"and|(also removing the|) this regex will work on your given example:find what:
"(.*?)\|
replace with:"
search mode: regular expressionnow hit “replace all”
note:
titles like:
<OpenInAdminMode title="Ошибка сохранения" message="Файл не может быть сохранен и может быть защищён. Хотите запустить Notepad++ в режиме администратора?" />
which don’t contain any chinese text, will not be modified. -
Hello, @andrecool-68, @Meta-chuh and All,
The main Chinese characters belongs to the Unicode block
CJK Unified Ideographs (Han), with codepoint in the range[4E00-9FEF]http://www.unicode.org/charts/PDF/U4E00.pdf
The Chinese punctuation characters belongs to the Unicode block
CJK Symbols and Punctuation, with codepoint in the range[3000-303F]http://www.unicode.org/charts/PDF/U3000.pdf
So, if you want to get rid of all chinese characters, in your
XMLfile, simply use the following regex S/R :SEARCH
[\x{3000}-\x{303F}\x{4E00}-\x{9FEF}]+REPLACE
Leave EMPTY
Just for information, note that if , after deleting all these chinese characters, we go on deleting, in your example, all
Cyrilliccharacters, below :http://www.unicode.org/charts/PDF/U0400.pdf
with the regex
[\x{0400}-\x{04FF}]+as well as all basic ASCII characters, with the regex
[\x{0020}-\x{007E}]+, it remains, only, the two chars?and,, which belong to the Unicode blockHalfwidth and Fullwidth Formshttp://www.unicode.org/charts/PDF/UFF00.pdf
Best regards
guy038
P.S. :
To have an overview of all world characters and punctuation, just refer to the page , below ,-))
-
<MessageBox diff:status="below"> <ContextMenuXmlEditWarning title="編輯快顯功能表|Редактирование contextMenu" message="編輯 contextMenu.xml 可以變更 Notepad++ 快顯功能表。 修改 contextMenu.xml 後必須重新啟動 Notepad++ 才會生效。|Редактирование contextMenu.xml позволяет настроить свое всплывающее контекстное меню в Notepad++. Вы должны перезапустить Notepad++, чтобы изменения вступили в силу." diff:status="modified"/> <NppHelpAbsentWarning title="檔案不存在|Файла не существует" message=" 不存在。請在 Notepad++ 網站上下載。| не существует. Пожалуйста, загрузите его с сайта Notepad++." diff:status="modified"/> <SaveCurrentModifWarning title="警告|Сохранение текущих изменений" message="您必須儲存目前的修改。 儲存修改後將無法復原。 您確定要繼續嗎?|Вы должны сохранить текущие изменения. Все сохраненные изменения не смогут быть отменены. Продолжить?" diff:status="modified"/> <LoseUndoAbilityWarning title="警告|Потеря возможности отката" message="您必須儲存目前的修改。 儲存修改後將無法復原。 您確定要繼續嗎?|Вы должны сохранить текущие изменения. Все сохраненные изменения не смогут быть отменены. Продолжить?" diff:status="modified"/> <CannotMoveDoc title="移至新 Notepad++ 實體|Переход к новому экземпляру Notepad++" message="文件已被修改,請在儲存後再試一次。|Документ был изменен, сохраните его и повторите попытку." diff:status="modified"/> <DocReloadWarning title="重新載入|Перезагрузка" message="您確定要重新載入目前文件,並捨棄在 Notepad++ 中所做的修改嗎?|Все внесенные изменения будут потеряны! Продолжить?" diff:status="modified"/> <FileLockedWarning title="儲存失敗|Сохранение не удалось" message="請確認此檔案是否正由其他程式開啟。|Пожалуйста, проверьте открыт ли этот файл в другом приложении." diff:status="modified"/> <FileAlreadyOpenedInNpp title="已開啟|" message="這個檔案已在 Notepad++ 中開啟。|Файл уже открыт в Notepad++." diff:status="modified"/> <DeleteFileFailed title="刪除失敗|Удаление файла" message="檔案刪除失敗。|Не удалось удалить файл" diff:status="modified"/> <NbFileToOpenImportantWarning title="開啟檔案|Очень большое количество файлов" message="您確定要開啟全數 $INT_REPLACE$ 個檔案嗎?|$INT_REPLACE$ файла(ов) будут открыты. Продолжить?" diff:status="modified"/> <SettingsOnCloudError title="雲端設定|Параметры Облака" message="設定的雲端路徑位於一個唯讀的磁碟或未擁有寫入權限的資料夾,因此您的「雲端」設定將被清除。 請在「偏好設定」中重新設定。|Похоже, что путь для облака указан на диск или папку с пометкой только для чтения. Вам необходимо открыть доступ или получить права на запись. Ваши параметры облака будут отменены. Пожалуйста сбросьте значение в окне Настройки..." diff:status="modified"/> <FilePathNotFoundWarning title="開啟檔案|Открытие Файла" message="您試圖開啟的文件不存在。|Файл, который вы пытаетесь открыть, не существует." diff:status="modified"/> <SessionFileInvalidError title="無法開啟工作階段|Не удалось загрузить Сессию" message="工作階段檔案無效或已被損毀。|Файл сессии поврежден или недействителен." diff:status="modified"/> <DroppingFolderAsProjectModeWarning title="操作無效|Неправильное действие" message="您只能單獨拖放文件或資料夾,但不能同時拖放,因為您在「偏好設定」「預設資料夾」中關閉了「拖放資料夾時開啟資料夾中所有文件,而不啟動資料夾工作區」的選項。 請啟用此選項,然後再試一次。|Вы можете применить только файлы или папки, но не обе, потому что вы перетаскиваете в режиме Папка как Проект. вы должны включить "Открыть все файлы папки при перетаскивании, вместо запуска Папка как Рабочая Область" в "Директорию По Умолчанию", чтобы эта операция работала зайдите в Настройки." diff:status="modified"/> <SortingError title="排序錯誤|Ошибка сортировки" message="第 $INT_REPLACE$ 行無法執行數字排序。|Невозможно выполнить числовую сортировку из-за строки $INT_REPLACE$." diff:status="modified"/> <ColumnModeTip title="多欄選取提示|Режим Столбца" message="請使用「ALT + 鼠標選擇」或「Alt + Shift + 箭頭鍵」以切換到多欄選取。|Пожалуйста, используйте "ALT+Выделение Мышкой" или "Alt+Shift+Клавиши Стрелок" для переключения в режим столбца." diff:status="modified"/> <BufferInvalidWarning title="儲存失敗|Ошибка Сохранения" message="緩衝區無效。|Не удается сохранить: Недопустимый буфер." diff:status="modified"/> <DoSaveOrNot title="儲存檔案|Сохранение" message="您要儲存「$STR_REPLACE$」嗎?|Сохранить файл "$STR_REPLACE$"?" diff:status="modified"/> <DoCloseOrNot title="保留文件|Удержание несуществующего файла" message="檔案「$STR_REPLACE$」已不存在。 您在 Notepad++ 中保存這個文件嗎?|Файла "$STR_REPLACE$" больше не существует. Удержать этот файл в редакторе?" diff:status="modified"/> <DoDeleteOrNot title="刪除檔案|Удаление файла" message="您確定要刪除並關閉「$STR_REPLACE$」嗎?|Файл "$STR_REPLACE$" будет закрыт и удалён в Корзину. Продолжить?" diff:status="modified"/> <NoBackupDoSaveFile title="儲存|Сохранение" message="您的備份文件已從外部刪除。 請儲存「$STR_REPLACE$」,否則您的數據將會遺失。 您要儲存嗎?|Файл резервной копии не найден (удалён извне). Сохраните его, иначе ваши данные будут потеряны. Вы хотите сохранить файл "$STR_REPLACE$" ?" diff:status="modified"/> <DoReloadOrNot title="重新載入|Обновление файла" message="「$STR_REPLACE$」已被其他程式修改。 您要重新載入此文件嗎?|"$STR_REPLACE$" Этот файл был изменен другой программой. Вы хотите обновить его?" diff:status="modified"/> <DoReloadOrNotAndLooseChange title="重新載入|Обновление файла" message="「$STR_REPLACE$」已被其他程式修改。 您要重新載入並捨棄在 Notepad++ 中所做的修改嗎?|"$STR_REPLACE$" Этот файл был изменен другой программой. Вы хотите обновить его? Но вы потеряете все внесенные изменения в Notepad++?" diff:status="modified"/> <PrehistoricSystemDetected title="系統過舊|Обнаружена доисторическая система" message="很抱歉,此功能不適用於過舊的系統。|Кажется, вы все еще используете доисторическую систему. Извините, но эта функция работает только на современных системах." diff:status="modified"/> <XpUpdaterProblem title="Notepad++ 更新程式|Обновление Notepad++" message="更新程式與 XP 的保全系統不兼容。 您要直接到 Notepad++ 網頁下載最新版本嗎?|Обновление Notepad++ не совместимо с XP из-за устаревшего уровня безопасности. Хотите перейти на страницу Notepad++, чтобы загрузить последнюю версию?" diff:status="modified"/> <DocTooDirtyToMonitor title="監控錯誤|Проблема Мониторинга" message="文件已被修改,請在監視前儲存文件。|Документ в работе. Сохраните внесённые изменения перед его мониторингом." diff:status="modified"/> <DocNoExistToMonitor title="監控錯誤|Проблема Мониторинга" message="文件不存在,因此無法進行監視。|Для мониторинга файл должен существовать." diff:status="modified"/> <FileTooBigToOpen title="文件太大|Проблема с размером файла" message="文件太大,無法使用 Notepad++ 開啟。|Файл слишком велик, чтобы открыть его в Notepad++" diff:status="modified"/> <CreateNewFileOrNot title="開新檔案|Создание нового файла" message="「$STR_REPLACE$」不存在。您要開新檔案嗎?|"$STR_REPLACE$" не существует. Создать его?" diff:status="modified"/> <CreateNewFileError title="開新檔案|Создание нового файла" message="無法開新檔案「$STR_REPLACE$」。|Не удается создать файл "$STR_REPLACE$"." diff:status="modified"/> <OpenFileError title="錯誤|ОШИБКА" message="無法開啟「$STR_REPLACE$」|Невозможно открыть файл "$STR_REPLACE$"." diff:status="modified"/> <FileBackupFailed title="文件備份失敗|Ошибка файла Резервного Копирования" message="以前版本的檔案無法儲存到「$STR_REPLACE$」的備份目錄中。您要儲存此文件嗎?|Предыдущая версия файла не может быть сохранена в каталоге резервного копирования "$STR_REPLACE$". Вы хотите сохранить текущий файл так или иначе?" diff:status="modified"/> <LoadStylersFailed title="載入失敗|Ошибка загрузки stylers.xml" message="載入「$STR_REPLACE$」失敗。|Ошибка загрузки "$STR_REPLACE$"!" diff:status="modified"/> <LoadLangsFailed title="載入失敗|Конфигуратор" message="載入 langs.xml 失敗。 您要回復它嗎?|Ошибка загрузки langs.xml! Вы хотите восстановить свой langs.xml?" diff:status="modified"/> <LoadLangsFailedFinal title="載入失敗|Конфигуратор" message="載入 langs.xml 失敗。|Ошибка загрузки langs.xml!" diff:status="modified"/> <FolderAsWorspaceSubfolderExists title="加入錯誤|Проблема при добавлении "Папка как Рабочая Область"" message="您要添加的目錄已以子目錄型態存在中。 如欲添加「$STR_REPLACE$」,請先將其根目錄從資料夾工作區中移除。|Подпапка папки, которую вы хотите добавить, уже существует. Пожалуйста, удалите её корень, прежде чем добавить папку "$STR_REPLACE$"." diff:status="modified"/> <ProjectPanelChanged title="$STR_REPLACE$" message="工作區已被修改。您要儲存它嗎?|Рабочая область была изменена. Вы хотите сохранить её?" diff:status="modified"/> <ProjectPanelChangedSaveError title="$STR_REPLACE$" message="工作區儲存失敗。|Ваше рабочая область не сохранена." diff:status="modified"/> <ProjectPanelOpenDoSaveDirtyWsOrNot title="開啟工作區|Открытие Рабочей Области" message="目前的工作區已被修改。您要儲存目前的專案嗎?|Текущая рабочая область была изменена. Вы хотите сохранить текущий проект?" diff:status="modified"/> <ProjectPanelNewDoSaveDirtyWsOrNot title="新工作區|Новая Рабочая Область" message="目前的工作區已被修改。您要儲存目前的專案嗎?|Текущая рабочая область была изменена. Вы хотите сохранить текущий проект?" diff:status="modified"/> <ProjectPanelOpenFailed title="無法開啟工作區|Открытие Рабочей Области" message="工作區檔案無效或已被損毀。|Не удалось открыть рабочую область. Похоже файл, который нужно открыть, является недопустимым файлом проекта." diff:status="modified"/> <ProjectPanelRemoveFolderFromProject title="從專案中刪除資料夾|Удаление папки из проекта" message="所有子目錄將被刪除。您確定要從專案中刪除此資料夾嗎?|Все подэлементы будут удалены. Вы действительно хотите удалить эту папку из проекта?" diff:status="modified"/> <ProjectPanelRemoveFileFromProject title="從專案中刪除文件|Удаление файла из проекта" message="您確定要從專案中刪除此文件嗎?|Вы действительно хотите удалить этот файл из проекта?" diff:status="modified"/> <ProjectPanelReloadError title="重新載入工作區|Перезагрузка Рабочей Области" message="找不到要重新載入的檔案。|Не удается найти файл для перезагрузки." diff:status="modified"/> <ProjectPanelReloadDirty title="重新載入工作區|Перезагрузка Рабочей Области" message="目前的工作區已被修改。您要重新載入並捨棄所做的修改嗎?|Текущее рабочая область была изменена. Перезагрузка отменит все изменения. Вы хотите продолжить?" diff:status="modified"/> <UDLNewNameError title="自訂程式語言錯誤|Ошибка Польз. Имени" message="此名稱已被另一個程式語言使用。請重新命名。|Это имя используется другим языком. Пожалуйста, дайте ему другое имя." diff:status="modified"/> <UDLRemoveCurrentLang title="刪除語言|Удаление текущего языка" message="您確定要刪除目前的自訂程式語言嗎?|Вы уверены?" diff:status="modified"/> <SCMapperDoDeleteOrNot title="刪除快速鍵|Вы уверены?" message="您確定要刪除這個快速鍵嗎?|Вы действительно хотите удалить эту горячую клавишу?" diff:status="modified"/> <FindCharRangeValueError title="輸入值範圍錯誤|Проблема со значением диапазона" message="您輸入的值應在 0 到 255 之間。如要搜尋大於 255 的字元,請在「尋找」對話方塊中使用「規則運算式」。|Вы должны ввести от 0 и до 255." diff:status="modified"/> <OpenInAdminMode title="Ошибка сохранения" message="Файл не может быть сохранен и может быть защищён. Хотите запустить Notepad++ в режиме администратора?" diff:status="added"/> <OpenInAdminModeWithoutCloseCurrent title="Ошибка сохранения" message="Файл не может быть сохранен и может быть защищён. Хотите запустить Notepad++ в режиме администратора?" diff:status="added"/> <OpenInAdminModeFailed title="Не удалось открыть в режиме Администратора" message="Notepad++ не может быть открыто в режиме Администратора." diff:status="added"/> </MessageBox> -
This regular expression has removed almost everything correctly except this section of code. Here it turned out not quite right.
<MessageBox diff:status="below"> <ContextMenuXmlEditWarning title="Редактирование contextMenu"Редактирование contextMenu.xml позволяет настроить свое всплывающее контекстное меню в Notepad++. Вы должны перезапустить Notepad++, чтобы изменения вступили в силу." diff:status="modified"/> <NppHelpAbsentWarning title="Файла не существует" не существует. Пожалуйста, загрузите его с сайта Notepad++." diff:status="modified"/> <SaveCurrentModifWarning title="Сохранение текущих изменений"Вы должны сохранить текущие изменения. Все сохраненные изменения не смогут быть отменены. Продолжить?" diff:status="modified"/> <LoseUndoAbilityWarning title="Потеря возможности отката"Вы должны сохранить текущие изменения. Все сохраненные изменения не смогут быть отменены. Продолжить?" diff:status="modified"/> <CannotMoveDoc title="Переход к новому экземпляру Notepad++"Документ был изменен, сохраните его и повторите попытку." diff:status="modified"/> <DocReloadWarning title="Перезагрузка"Все внесенные изменения будут потеряны! Продолжить?" diff:status="modified"/> <FileLockedWarning title="Сохранение не удалось"Пожалуйста, проверьте открыт ли этот файл в другом приложении." diff:status="modified"/> <FileAlreadyOpenedInNpp title=""Файл уже открыт в Notepad++." diff:status="modified"/> <DeleteFileFailed title="Удаление файла"Не удалось удалить файл" diff:status="modified"/> <NbFileToOpenImportantWarning title="Очень большое количество файлов"$INT_REPLACE$ файла(ов) будут открыты. Продолжить?" diff:status="modified"/> <SettingsOnCloudError title="Параметры Облака"Похоже, что путь для облака указан на диск или папку с пометкой только для чтения. Вам необходимо открыть доступ или получить права на запись. Ваши параметры облака будут отменены. Пожалуйста сбросьте значение в окне Настройки..." diff:status="modified"/> <FilePathNotFoundWarning title="Открытие Файла"Файл, который вы пытаетесь открыть, не существует." diff:status="modified"/> <SessionFileInvalidError title="Не удалось загрузить Сессию"Файл сессии поврежден или недействителен." diff:status="modified"/> <DroppingFolderAsProjectModeWarning title="Неправильное действие"Вы можете применить только файлы или папки, но не обе, потому что вы перетаскиваете в режиме Папка как Проект. вы должны включить "Открыть все файлы папки при перетаскивании, вместо запуска Папка как Рабочая Область" в "Директорию По Умолчанию", чтобы эта операция работала зайдите в Настройки." diff:status="modified"/> <SortingError title="Ошибка сортировки"Невозможно выполнить числовую сортировку из-за строки $INT_REPLACE$." diff:status="modified"/> <ColumnModeTip title="Режим Столбца"Пожалуйста, используйте "ALT+Выделение Мышкой" или "Alt+Shift+Клавиши Стрелок" для переключения в режим столбца." diff:status="modified"/> <BufferInvalidWarning title="Ошибка Сохранения"Не удается сохранить: Недопустимый буфер." diff:status="modified"/> <DoSaveOrNot title="Сохранение"Сохранить файл "$STR_REPLACE$"?" diff:status="modified"/> <DoCloseOrNot title="Удержание несуществующего файла"Файла "$STR_REPLACE$" больше не существует. Удержать этот файл в редакторе?" diff:status="modified"/> <DoDeleteOrNot title="Удаление файла"Файл "$STR_REPLACE$" будет закрыт и удалён в Корзину. Продолжить?" diff:status="modified"/> <NoBackupDoSaveFile title="Сохранение"Файл резервной копии не найден (удалён извне). Сохраните его, иначе ваши данные будут потеряны. Вы хотите сохранить файл "$STR_REPLACE$" ?" diff:status="modified"/> <DoReloadOrNot title="Обновление файла""$STR_REPLACE$" Этот файл был изменен другой программой. Вы хотите обновить его?" diff:status="modified"/> <DoReloadOrNotAndLooseChange title="Обновление файла""$STR_REPLACE$" Этот файл был изменен другой программой. Вы хотите обновить его? Но вы потеряете все внесенные изменения в Notepad++?" diff:status="modified"/> <PrehistoricSystemDetected title="Обнаружена доисторическая система"Кажется, вы все еще используете доисторическую систему. Извините, но эта функция работает только на современных системах." diff:status="modified"/> <XpUpdaterProblem title="Обновление Notepad++"Обновление Notepad++ не совместимо с XP из-за устаревшего уровня безопасности. Хотите перейти на страницу Notepad++, чтобы загрузить последнюю версию?" diff:status="modified"/> <DocTooDirtyToMonitor title="Проблема Мониторинга"Документ в работе. Сохраните внесённые изменения перед его мониторингом." diff:status="modified"/> <DocNoExistToMonitor title="Проблема Мониторинга"Для мониторинга файл должен существовать." diff:status="modified"/> <FileTooBigToOpen title="Проблема с размером файла"Файл слишком велик, чтобы открыть его в Notepad++" diff:status="modified"/> <CreateNewFileOrNot title="Создание нового файла""$STR_REPLACE$" не существует. Создать его?" diff:status="modified"/> <CreateNewFileError title="Создание нового файла"Не удается создать файл "$STR_REPLACE$"." diff:status="modified"/> <OpenFileError title="ОШИБКА"Невозможно открыть файл "$STR_REPLACE$"." diff:status="modified"/> <FileBackupFailed title="Ошибка файла Резервного Копирования"Предыдущая версия файла не может быть сохранена в каталоге резервного копирования "$STR_REPLACE$". Вы хотите сохранить текущий файл так или иначе?" diff:status="modified"/> <LoadStylersFailed title="Ошибка загрузки stylers.xml"Ошибка загрузки "$STR_REPLACE$"!" diff:status="modified"/> <LoadLangsFailed title="Конфигуратор"Ошибка загрузки langs.xml! Вы хотите восстановить свой langs.xml?" diff:status="modified"/> <LoadLangsFailedFinal title="Конфигуратор"Ошибка загрузки langs.xml!" diff:status="modified"/> <FolderAsWorspaceSubfolderExists title="Проблема при добавлении "Папка как Рабочая Область""Подпапка папки, которую вы хотите добавить, уже существует. Пожалуйста, удалите её корень, прежде чем добавить папку "$STR_REPLACE$"." diff:status="modified"/> <ProjectPanelChanged title="Рабочая область была изменена. Вы хотите сохранить её?" diff:status="modified"/> <ProjectPanelChangedSaveError title="Ваше рабочая область не сохранена." diff:status="modified"/> <ProjectPanelOpenDoSaveDirtyWsOrNot title="Открытие Рабочей Области"Текущая рабочая область была изменена. Вы хотите сохранить текущий проект?" diff:status="modified"/> <ProjectPanelNewDoSaveDirtyWsOrNot title="Новая Рабочая Область"Текущая рабочая область была изменена. Вы хотите сохранить текущий проект?" diff:status="modified"/> <ProjectPanelOpenFailed title="Открытие Рабочей Области"Не удалось открыть рабочую область. Похоже файл, который нужно открыть, является недопустимым файлом проекта." diff:status="modified"/> <ProjectPanelRemoveFolderFromProject title="Удаление папки из проекта"Все подэлементы будут удалены. Вы действительно хотите удалить эту папку из проекта?" diff:status="modified"/> <ProjectPanelRemoveFileFromProject title="Удаление файла из проекта"Вы действительно хотите удалить этот файл из проекта?" diff:status="modified"/> <ProjectPanelReloadError title="Перезагрузка Рабочей Области"Не удается найти файл для перезагрузки." diff:status="modified"/> <ProjectPanelReloadDirty title="Перезагрузка Рабочей Области"Текущее рабочая область была изменена. Перезагрузка отменит все изменения. Вы хотите продолжить?" diff:status="modified"/> <UDLNewNameError title="Ошибка Польз. Имени"Это имя используется другим языком. Пожалуйста, дайте ему другое имя." diff:status="modified"/> <UDLRemoveCurrentLang title="Удаление текущего языка"Вы уверены?" diff:status="modified"/> <SCMapperDoDeleteOrNot title="Вы уверены?"Вы действительно хотите удалить эту горячую клавишу?" diff:status="modified"/> <FindCharRangeValueError title="Проблема со значением диапазона"Вы должны ввести от 0 и до 255." diff:status="modified"/> <OpenInAdminMode title="Ошибка сохранения" message="Файл не может быть сохранен и может быть защищён. Хотите запустить Notepad++ в режиме администратора?" diff:status="added"/> <OpenInAdminModeWithoutCloseCurrent title="Ошибка сохранения" message="Файл не может быть сохранен и может быть защищён. Хотите запустить Notepad++ в режиме администратора?" diff:status="added"/> <OpenInAdminModeFailed title="Не удалось открыть в режиме Администратора" message="Notepad++ не может быть открыто в режиме Администратора." diff:status="added"/> </MessageBox> -
@andrecool-68
let’s combine @guy038 's regex with mine, and it should work on your second example:find what:
"[\x{3000}-\x{303F}\x{4E00}-\x{9FEF}](.*?)\|
replace with:"note: this new regex will only work if the first character after a " is chinese
@guy038
your original regex leaves out the|which should also be removed. -
This removes all Chinese characters, but the fact is that the phrase starts with this character = " and ends with this character |
And along with the Chinese symbols there may be other symbols including Latin.<DoSaveOrNot title=“儲存檔案|Сохранение” message=“您要儲存「$STR_REPLACE$」嗎?|Сохранить файл "$STR_REPLACE$"?” diff:status=“modified”/>
-
yes, you are correct, sorry.
please try this modified one:
find what:
"(.*?)[\x{3000}-\x{303F}\x{4E00}-\x{9FEF}](.*?)\|
replace with:"with this one any text can start, end, or have latin characters in between.
text will only be removed if chinese is somewhere, anywhere between " and | -
It turned out very well here.
<Item id="Режим Поиска" diff:status="modified"/> <Item id="Обычный" diff:status="modified"/> <Item id="Регуляр. выражен." diff:status="modified"/> <Item id="Расширенный (\n, \r, \t, \0, \x...)" diff:status="modified"/> <Item id="и новые строки" diff:status="modified"/> </FindInFinder> <SHA256FromFilesDlg title="從檔案產生 SHA-256" diff:status="removed"> <Item id="1922" name="從檔案產生 SHA-256..." diff:status="removed"/> <Item id="1924" name="複製到剪貼簿" diff:status="removed"/> <Item id="2" name="關閉" diff:status="removed"/> </SHA256FromFilesDlg>It didn’t work out right here.
<FileTooBigToOpen title="Проблема с размером файла"Файл слишком велик, чтобы открыть его в Notepad++" diff:status="modified"/> <CreateNewFileOrNot title="Создание нового файла""$STR_REPLACE$" не существует. Создать его?" diff:status="modified"/> <CreateNewFileError title="Создание нового файла"Не удается создать файл "$STR_REPLACE$"." diff:status="modified"/> <OpenFileError title="ОШИБКА"Невозможно открыть файл "$STR_REPLACE$"." diff:status="modified"/> -
one more ;-)
find what:
="(.*?)[\x{3000}-\x{303F}\x{4E00}-\x{9FEF}](.*?)\|
replace with:="i’ve now added = to the search, because the old regex started at the end " instead of the beginning " under certain circumstances.
note: i’m not a regex guru like @guy038 and i obviously underestimated how many conditions you have to think of in your head, before writing a regex.
i’m more of the “trial and error” dude ;-) -
It is very bad that there is no utility to work with the localization of Notepad++, a simple comparison of files does not always give a good result. Since the strings in the XML language files do not go in their order. This can be seen by comparing Chinese and Russian.
-
@Meta-Chuh
Here’s what happened here:<Item menuId="&Файл"/> <Item menuId="&Правка"/> <Item menuId="По&иск"/> <Item menuId="&Вид"/> <Item menuId="&Кодировки"/> <Item menuId="&Синтаксисы"/> <Item menuId="&Опции"/> <Item menuId="Инстр&ументы"/> <Item menuId="&Макросы"/> <Item menuId="&Запуск"/> <Item idName="Плаги&ны"/> <Item idName="Вкл&адки"/>And should be so:
<Item menuId="file" name="&Файл"/> <Item menuId="edit" name="&Правка"/> <Item menuId="search" name="По&иск"/> <Item menuId="view" name="&Вид"/> <Item menuId="encoding" name="&Кодировки"/> <Item menuId="language" name="&Синтаксисы"/> <Item menuId="settings" name="&Опции"/> <Item menuId="tools" name="Инстр&ументы"/> <Item menuId="macro" name="&Макросы"/> <Item menuId="run" name="&Запуск"/> <Item idName="Plugins" name="Плаги&ны"/> <Item idName="Window" name="Вкл&адки"/>Probably regular expressions will not be able to fix the mess that is made xmlTreeNav. Need to look for an alternative to xmlTreeNav (this is not a good tool for XML localization)
-
Hi, @andrecool-68, @Meta-chuh and All,
Ah, yes ! Your last attempt, adding the
=sign is the right one because your former regex deleted themessage =part !Now, I’ve got the problem : you want to delete the part of values, of the two attributes
titleandmessage, after the="string, till the nearest|character included, but only if this range contains, at least, one Chinese character ;-))So, the following regex S/R :
-
SEARCH
(?-s)\x20(title|message)="\K.*?[\x{3000}-\x{303F}\x{4E00}-\x{9FEF}].*?\| -
REPLACE
Leave EMPTY -
Option
Regular expression -
Option
Wrap around, if necessary -
Click on the
Replace Allbutton, exclusively ( because of the\Ksyntax )
Et voilà !
I tested the result of our two regexes, Chuh, and they do produce the same replaced text ;-))
Cheers,
guy038
-
-
You’ll laugh but it worked for this piece of code and left the rest unchanged.
-
that’s why you are the guru ;-)
it is always astonishing how many things you are capable of thinking ahead so quickly.
like a game of chess, where you know the outcome of the game, even before a user makes the first draw.this example looked so easy to me at first, but i have missed to think about so many things in advance, and this clearly shows the limits of my “trial and error” attempts.
ps: i thought you were skiing today … or are you writing from your mobile phone, while you are actually cruising down the slopes at the same time ? 😉👍
-
We have in Israel, plus 22 degrees Celsius , and it is very difficult in this weather to ski)))
-
Thank you all very much for your help!
-
We have in Israel, plus 22 degrees Celsius , and it is very difficult in this weather to ski)))
😂 i would like to have your temperatures and climate around here too, plus a cocktail on a beach, with chillout music and happy people all around 👍
-
Hi, @meta-chuh,
Please, not a “regex guru”. Only a guy who always keeps his eyes amazed at the important text changes that these little pieces of code can produce !
Sorry, Chuh, I did not write on my mobile phone while skiing ! Unlike young people, I still need a screen, with a fairly size to feel comfortable, while writing a post on our forum ;-))
Actually, though weather was marvelous, and probably due to my recent indisposition, I was a bit tired last afternoon and I just stopped, up there, with a colleague, … … … for a beer, looking at the nice panorama around ! But, we’ve planned an other ski-day, next Thursday, on the “Les Menuires - St Martin de Belleville” ski area !
Here is my modified “slopes map” picture, which shows the “Meribel - Les Menuires - Val Thorens” areas and part of Courchevel, on the left !

BR
guy038
-
I did all these operations in a row, there are only 5 lines that can be cleared manually. I made a macro of these regular expressions, everything turned out well!
"e name="(.*?)[\x{3000}-\x{303F}\x{4E00}-\x{9FEF}](.*?)\|
"e name="" name="(.*?)[\x{3000}-\x{303F}\x{4E00}-\x{9FEF}](.*?)\|
" name="name="(.*?)[\x{3000}-\x{303F}\x{4E00}-\x{9FEF}](.*?)\|
name="" name="(.*?)[\x{3000}-\x{303F}\x{4E00}-\x{9FEF}](.*?)\|
" name="title="(.*?)[\x{3000}-\x{303F}\x{4E00}-\x{9FEF}](.*?)\|
title="message="(.*?)[\x{3000}-\x{303F}\x{4E00}-\x{9FEF}](.*?)\|
message="value="(.*?)[\x{3000}-\x{303F}\x{4E00}-\x{9FEF}](.*?)\|
value="Thank you very much for your efforts!
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login