Войти

Показать полную графическую версию : Способ поиска и замены текста, с уникальным значением каждой замены.


Страниц : [1] 2

vk_k14m@vk
15-11-2021, 13:03
Сегодня у меня странный вопрос. Допустим есть текстовый файл с огромным количество подобного текста [$gameVariables.value(111)][72] = '日本語のテキスト'
Этот текст нужно найти, и заменить на подобный [$gameVariables.value(111)][72] = 'Русские буквы'Но таким образом, что б каждая последующая замена чем то отличалась от предыдущей. Например так:
[$gameVariables.value(111)][72] = 'Русские буквы 1'
[$gameVariables.value(111)][72] = 'Русские буквы 2'
[$gameVariables.value(111)][72] = 'Русские буквы 3'

[$gameVariables.value(111)][72] = 'Русские буквы a'
[$gameVariables.value(111)][72] = 'Русские буквы b'
[$gameVariables.value(111)][72] = 'Русские буквы c'

[$gameVariables.value(111)][72] = 'Русские буквы +'
[$gameVariables.value(111)][72] = 'Русские буквы ++'
[$gameVariables.value(111)][72] = 'Русские буквы +++'

Можно ли это сделать и если да то каким образом? Я искал способ для notepad++, но он, кажется, подобное не умеет...

Jula0071
15-11-2021, 13:31
'日本語のテキスト' »
Что, прям именно такого - смесь хань, хираганы и катаканы? ;)
Вам нужно плясать от регексов, например, конкретно эту строку матчит выражение

[\p{Han}\p{Hiragana}\p{Katakana}]

Notepad++ вроде понимает регексы. Но наверное лучше написать скрипт.

vk_k14m@vk
15-11-2021, 13:42
Что, прям именно такого - смесь хань, хираганы и катаканы? »
Я не хочу что б мне все японские символы без разбору заменилось на русский текст. Я хочу что б КОНКРЕТНЫЕ японские символы заменились на КОНКРЕТНЫЙ русский текст.

a_axe
15-11-2021, 14:42
vk_k14m@vk, если я правильно понимаю - вы меняете одну строчку на одну и ту же замену, но каждую замену нужно пронумеровать?
В Word это можно сделать следующим способом:
1. Нажмите ctrl+F9, в появившиеся скобочки вставьте "LISTNUM NumberDefault \s" без кавычек.
2. Нажмите alt+F9, нумерация примет вид "1)". Скопируйте ее в буфер обмена, затем это вхождение нумерации можно удалить.
3. В диалоге поиска и замены (ctrl+H) найдите
[$gameVariables.value(111)][72] = '日本語のテキスト' и замените на
[$gameVariables.value(111)][72] = 'желаемый_текст ^c'
где за нумерацию будет отвечать ^c. Единственное - нумерация будет автоматически пересчитываться, если добавить еще вхождения этого поля, если вы ищите несколько разных фраз, то текст нужно скопировать и вставить через ctrl+alt+v как неформатированный текст, иначе нумерация будет едина для разных текстов.

vk_k14m@vk
15-11-2021, 15:31
vk_k14m@vk, если я правильно понимаю - вы меняете одну строчку на одну и ту же замену, но каждую замену нужно пронумеровать?
В Word это можно сделать следующим способом:
1. Нажмите ctrl+F9, в появившиеся скобочки вставьте "LISTNUM NumberDefault \s" без кавычек.
2. Нажмите alt+F9, нумерация примет вид "1)". Скопируйте ее в буфер обмена, затем это вхождение нумерации можно удалить.
3. В диалоге поиска и замены (ctrl+H) найдите
[$gameVariables.value(111)][72] = '日本語のテキスト' и замените на
[$gameVariables.value(111)][72] = 'желаемый_текст ^c'
где за нумерацию будет отвечать ^c. Единственное - нумерация будет автоматически пересчитываться, если добавить еще вхождения этого поля, если вы ищите несколько разных фраз, то текст нужно скопировать и вставить через ctrl+alt+v как неформатированный текст, иначе нумерация будет едина для разных текстов. »
Да, почти. Не обязательно нумеровать цифрами, нужно заменить японский текст русским переводов и добавить к переводу какую-то уникальность что б при последующем поиске я мог найти именно тот самый текст. И заменяю я не всю строчку а конкретную ее часть.
{"id":3,"list":[{"code":108,"indent":0,"parameters":["======================主人公======================="]},{"code":408,"indent":0,"parameters":["使い捨て変数1:対象の女  引数としてIDを指定する"]},{"code":408,"indent":0,"parameters":["使い捨て変数2:相手の男 引数IDを指定する"]},{"code":408,"indent":0,"parameters":["使い捨て変数3:好感度変動の値"]},{"code":408,"indent":0,"parameters":["使い捨て変数5:好感度、相性度が変化する相手 IDを指定する"]},{"code":408,"indent":0,"parameters":["使い捨て変数6:相性度変動の値"]},{"code":108,"indent":0,"parameters":["使い捨て変数7:妊娠する確率"]},{"code":408,"indent":0,"parameters":["使い捨て変数8:何人に犯されたか"]},{"code":408,"indent":0,"parameters":["使い捨て変数9:獲得精液量"]},{"code":122,"indent":0,"parameters":[111,111,0,0,1]},{"code":122,"indent":0,"parameters":[112,112,0,0,21]},{"code":122,"indent":0,"parameters":[113,113,0,0,3]},{"code":122,"indent":0,"parameters":[115,115,0,0,21]},{"code":122,"indent":0,"parameters":[116,116,0,0,3]},{"code":122,"indent":0,"parameters":[117,117,0,0,10]},{"code":122,"indent":0,"parameters":[118,118,0,0,1]},{"code":122,"indent":0,"parameters":[119,119,0,0,5]},{"code":122,"indent":0,"parameters":[119,119,1,2,0,4]},{"code":122,"indent":0,"parameters":[96,96,1,1,119]},{"code":111,"indent":0,"parameters":[1,119,0,0,3]},{"code":101,"indent":1,"parameters":["",0,0,2]},{"code":401,"indent":1,"parameters":["魔力を帯びた精液を\\v[119]ml手に入れた。"]},{"code":0,"indent":1,"parameters":[]},{"code":412,"indent":0,"parameters":[]},{"code":108,"indent":0,"parameters":["======================設定ここまで====================="]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][4] += 1//淫乱度"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][6] += 1//主人公との性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][7] += 0//他との性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][8] += 0//戦闘時の性交回数"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][11] += 0//主との中出し回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][12] += 0//他との中出し回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][13] += 0//戦闘中の中出し回数"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][102] += 1//主前性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][103] += 0//他前性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][105] += 0//主後性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][106] += 0//他後性交回数"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][108] += 0//主中精液量"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][109] += 0//他中精液量"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][112] += (5 + Math.floor( Math.random() * 7))//主外精液量"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][113] += 0//他外精液量"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][78] += 0//主との絶頂回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][79] += 0//他との絶頂回数"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][5] = ($gameVariables.value($gameVariables.value(111))[6]+$gameVariables.value($gameVariables.value(111))[7])//性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][10] = ($gameVariables.value($gameVariables.value(111))[11]+$gameVariables.value($gameVariables.value(111))[12])//中出し回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][101] = ($gameVariables.value($gameVariables.value(111))[102]+$gameVariables.value($gameVariables.value(111))[103])//前性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][104] = ($gameVariables.value($gameVariables.value(111))[105]+$gameVariables.value($gameVariables.value(111))[106])//後性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][107] = ($gameVariables.value($gameVariables.value(111))[108]+$gameVariables.value($gameVariables.value(111))[109])//仲精液量"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][111] = ($gameVariables.value($gameVariables.value(111))[112]+$gameVariables.value($gameVariables.value(111))[113])//外精液量"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][77] = ($gameVariables.value($gameVariables.value(111))[78]+$gameVariables.value($gameVariables.value(111))[79])//絶頂回数"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][28] = 0//身体を洗う?0で洗う、1で洗わない"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][29] += 0//エロで翌週強化?"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][72] = '夜這い'//前回の状況"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][73] = 'ラブラブセックスで子作りセックスを行う。'//前回の内容1行目"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][74] = '間男ほど感じないが、精神的に充足感を得た。'//前回の内容2行目"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][75] = ' '//前回の内容3行目"]},{"code":108,"indent":0,"parameters":["経験人数操作+妊娠判定"]},{"code":408,"indent":0,"parameters":["引数"]},{"code":408,"indent":0,"parameters":["使い捨て変数2、男の変数(+200すると変数になる"]},{"code":408,"indent":0,"parameters":[""]},{"code":408,"indent":0,"parameters":["使い捨て変数4を内部で使う"]},{"code":121,"indent":0,"parameters":[124,124,1]},{"code":121,"indent":0,"parameters":[125,125,1]},{"code":121,"indent":0,"parameters":[127,127,0]},{"code":121,"indent":0,"parameters":[131,131,0]},{"code":122,"indent":0,"parameters":[139,139,0,0,1]},{"code":122,"indent":0,"parameters":[138,138,0,0,1]},{"code":117,"indent":0,"parameters":[43]},{"code":117,"indent":0,"parameters":[7]},{"code":108,"indent":0,"parameters":["好感度変動、引数"]},{"code":408,"indent":0,"parameters":["使い捨て変数3:好感度が変動する値"]},{"code":408,"indent":0,"parameters":["使い捨て変数5:好感度が変動する相手"]},{"code":117,"indent":0,"parameters":[8]},{"code":108,"indent":0,"parameters":["相性度変動、引数"]},{"code":408,"indent":0,"parameters":["使い捨て変数6:相性度が変動する値"]},{"code":408,"indent":0,"parameters":["使い捨て変数5:相性度が変動する相手"]},{"code":117,"indent":0,"parameters":[12]},{"code":117,"indent":0,"parameters":[57]},{"code":108,"indent":0,"parameters":["======================他======================="]},{"code":408,"indent":0,"parameters":["使い捨て変数1:対象の女  引数としてIDを指定する"]},{"code":408,"indent":0,"parameters":["使い捨て変数2:相手の男 引数IDを指定する"]},{"code":408,"indent":0,"parameters":["使い捨て変数3:好感度変動の値"]},{"code":408,"indent":0,"parameters":["使い捨て変数5:好感度、相性度が変化する相手 IDを指定する"]},{"code":408,"indent":0,"parameters":["使い捨て変数6:相性度変動の値"]},{"code":108,"indent":0,"parameters":["使い捨て変数7:妊娠する確率"]},{"code":408,"indent":0,"parameters":["使い捨て変数8:何人に犯されたか"]},{"code":408,"indent":0,"parameters":["使い捨て変数9:獲得精液量"]},{"code":122,"indent":0,"parameters":[111,111,0,0,1]},{"code":122,"indent":0,"parameters":[112,112,0,0,22]},{"code":122,"indent":0,"parameters":[113,113,0,0,3]},{"code":122,"indent":0,"parameters":[115,115,0,0,22]},{"code":122,"indent":0,"parameters":[116,116,0,0,3]},{"code":122,"indent":0,"parameters":[117,117,0,0,10]},{"code":122,"indent":0,"parameters":[118,118,0,0,1]},{"code":122,"indent":0,"parameters":[119,119,0,0,4]},{"code":122,"indent":0,"parameters":[119,119,1,2,0,4]},{"code":122,"indent":0,"parameters":[96,96,1,1,119]},{"code":111,"indent":0,"parameters":[1,119,0,0,3]},{"code":101,"indent":1,"parameters":["",0,0,2]},{"code":401,"indent":1,"parameters":["魔力を帯びた精液を\\v[119]ml手に入れた。"]},{"code":0,"indent":1,"parameters":[]},{"code":412,"indent":0,"parameters":[]},{"code":108,"indent":0,"parameters":["======================設定ここまで====================="]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][4] += 1//淫乱度"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][6] += 0//主人公との性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][7] += 1//他との性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][8] += 0//戦闘時の性交回数"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][11] += 0//主との中出し回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][12] += 1//他との中出し回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][13] += 0//戦闘中の中出し回数"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][102] += 0//主前性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][103] += 1//他前性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][105] += 0//主後性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][106] += 0//他後性交回数"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][108] += 0//主中精液量"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][109] += (5 + Math.floor( Math.random() * 7))//他中精液量"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][112] += 0//主外精液量"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][113] += 0//他外精液量"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][78] += 0//主との絶頂回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][79] += 0//他との絶頂回数"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][5] = ($gameVariables.value($gameVariables.value(111))[6]+$gameVariables.value($gameVariables.value(111))[7])//性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][10] = ($gameVariables.value($gameVariables.value(111))[11]+$gameVariables.value($gameVariables.value(111))[12])//中出し回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][101] = ($gameVariables.value($gameVariables.value(111))[102]+$gameVariables.value($gameVariables.value(111))[103])//前性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][104] = ($gameVariables.value($gameVariables.value(111))[105]+$gameVariables.value($gameVariables.value(111))[106])//後性交回数"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][107] = ($gameVariables.value($gameVariables.value(111))[108]+$gameVariables.value($gameVariables.value(111))[109])//仲精液量"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][111] = ($gameVariables.value($gameVariables.value(111))[112]+$gameVariables.value($gameVariables.value(111))[113])//外精液量"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][77] = ($gameVariables.value($gameVariables.value(111))[78]+$gameVariables.value($gameVariables.value(111))[79])//絶頂回数"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][28] = 0//身体を洗う?0で洗う、1で洗わない"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][29] += 0//エロで翌週強化?"]},{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][72] = '眠姦'//前回の状況"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][73] = '魔術で深い眠りに付かされて無責任生中出しされる。'//前回の内容1行目"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][74] = 'しっかりと膣奥で精液を注がれ、無意識に快楽を覚えた。'//前回の内容2行目"]},{"code":655,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][75] = ' '//前回の内容3行目"]},{"code":108,"indent":0,"parameters":["経験人数操作+妊娠判定"]},{"code":408,"indent":0,"parameters":["引数"]},{"code":408,"indent":0,"parameters":["使い捨て変数2、男の変数(+200すると変数になる"]},{"code":408,"indent":0,"parameters":[""]},{"code":408,"indent":0,"parameters":["使い捨て変数4を内部で使う"]},{"code":121,"indent":0,"parameters":[124,124,1]},{"code":121,"indent":0,"parameters":[125,125,1]},{"code":121,"indent":0,"parameters":[127,127,0]},{"code":121,"indent":0,"parameters":[131,131,0]},{"code":122,"indent":0,"parameters":[139,139,0,0,1]},{"code":122,"indent":0,"parameters":[138,138,0,0,1]},{"code":117,"indent":0,"parameters":[43]},{"code":117,"indent":0,"parameters":[7]},{"code":108,"indent":0,"parameters":["好感度変動、引数"]},{"code":408,"indent":0,"parameters":["使い捨て変数3:好感度が変動する値"]},{"code":408,"indent":0,"parameters":["使い捨て変数5:好感度が変動する相手"]},{"code":117,"indent":0,"parameters":[8]},{"code":108,"indent":0,"parameters":["相性度変動、引数"]},{"code":408,"indent":0,"parameters":["使い捨て変数6:相性度が変動する値"]},{"code":408,"indent":0,"parameters":["使い捨て変数5:相性度が変動する相手"]},{"code":117,"indent":0,"parameters":[12]},{"code":117,"indent":0,"parameters":[57]},{"code":0,"indent":0,"parameters":[]}],"name":"イベント後変数操作","switchId":1,"trigger":0}, Попробую сделать как вы написали. Надеюсь поможет. А что касаемо нумерации. Это значит что если я буду заменять разные куски текста то у всех у них будет общая нумерация? Это совсем не проблема. Главное что б у одной и той же замены текст не совпадал в точности. А если нумерация не с 1 будет начинатся, это не важно...

В целом работает, но немного не так.
Я искал Variables.value(111)][72] = '夜這い'
И заменял на Variables.value(111)][72] = 'Ночное посещение ^c'

И в итоге текст
{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][72] = '夜這い'//前回の状況"]}
Превратился в текст
{"code":355,"indent":0,"parameters":["$gameVariables._data[$gameVariables.value(111)][72] = ‘Ночное посещение Variables.value(111)][72] = 'Ночное посещение ^c'‘//前回の状況"]},

Я сделал что-то не так?

Меня вот что беспокоит. Я должен скопировать "1)". И это должно остаться в буфере обмена? Если да то у меня ничего не выйдет. Получается что текст "Variables.value(111)][72] = '夜這い'" и "Variables.value(111)][72] = 'Ночное посещение ^c'" я должен написать вручную? А не копировать вставить? С русским и англаийким я конечно справлюсь, а вот на японском я написать не смогу...

a_axe
15-11-2021, 15:49
vk_k14m@vk, тут нюансы следующие:
1). К тексту добавится счетчик, он вычисляется просто по порядку - 1, 2, 3. Если в документе было 10 замен, и в середине вы вставите еще один новый - то вся нумерация пересчитается - шестой станет седьмым, седьмой - восьмым, десятый - одиннадцатым.

2). Если вы искали "яблоко" и заменили на "яблоко1)" - "яблоко15)", а потом стали искать "груша", то у груши не будет своей отдельной нумерации - будет мешанина: "яблоко1) яблоко2) груша3) яблоко4) груша5)".

Опишите более подробно конечный результат, тогда можно скорректировать решение.

Я сделал что-то не так? »
Вероятно - в буфере было не поле {LISTNUM NumberDefault \s} , а скопирован текст. Откройте второй документ word, в нем впишите {LISTNUM NumberDefault \s} - повторюсь через ctrl+f9 и копируйте в буфер непосредственно перед поиском и заменой. Если вариант подойдет, можно подумать, как убрать ненужное копирование.

vk_k14m@vk
15-11-2021, 15:54
2). Если вы искали "яблоко" и заменили на "яблоко1)" - "яблоко15)", а потом стали искать "груша", то у груши не будет своей отдельной нумерации - будет мешанина: "яблоко1) яблоко2) груша3) яблоко4) груша5)". »
Это не проблема вообще. Суть не в том что б пронумеровать яблоки и груши от 1 до n, а в том что б просто у каждой груши и яблока была своя цифра. Что б не было двух груш и двух яблок с одинаковой цифрой. Что б не было двух "груш3" или двух "яблок9". Так что ничего страшного в том что нумерация сломана или непоследовательна.

vk_k14m@vk
15-11-2021, 16:11
Вероятно - в буфере было не поле {LISTNUM NumberDefault \s} , а скопирован текст. Откройте второй документ word, в нем впишите {LISTNUM NumberDefault \s} - повторюсь через ctrl+f9 и копируйте в буфер непосредственно перед поиском и заменой. Если вариант подойдет, можно подумать, как убрать ненужное копирование. »
Кажется понял. Нужно сначала привести нумерацию к виду "1)"
Потом открыть меню замены, вписать что и на что я хочу заменить. А уже потом скопировать нумерацию "1)" в буфер обмена и произвести замену.

Сейчас так попробую...

...И. Снова проблема. Внутри Word все работает как положено. Замена прошла успешно и везде появилась цифра. Но стоит сохраниться и открыть файл в программе оригинале, или просто в блокноте. Как цифра пропадает. Она не сохранятся в файл. Пытался просто сохранить файл, или "сохранить как" в txt файл. Все равно нумерация исчезает, хоть текст и заменился на русский и добавился пробел, но цифры нет.

Работает если сохранить в docx...
И вот что интересно. Даже так при использовании обычного поиска по документу. В поиске цифры нет. Это как буд-то какая то надстройка которая работает только внутри Word
https://cdn.discordapp.com/attachments/589009169223385118/909793964230574120/e6687c23b803a993.png

Нашел костыльное решение. После замены я не сохраняю документ. Я выделяю весь текст внутри Word и копирую. Затем открываю оригинал файла в Notepad++ и вставляю туда весь текст с Word. Так цифры нумерации остаются. Видимо придется так делать постоянно...

wasp14
15-11-2021, 16:36
Описание программы nhrt | nhutils (https://nhutils.ru/blog/nhrt/)

vk_k14m@vk
15-11-2021, 16:38
Описание программы nhrt | nhutils »
Это наверняка очень полезная и мощная утилита, но командная строка...
Я такое не осилю...

Еще и комментарий на странице оставить нельзя.

wasp14
15-11-2021, 16:58
нет, похоже такое она не умеет. подробней почитал что нужно, не оно...

DJ Mogarych
16-11-2021, 09:01
Powershell:

$file = "D:\temp\japanese.txt"
$from = "日本語のテキスト"
$to = "Русские буквы"

$c = 1
$result = gc "$file" -Encoding UTF8 |% {
$_ -replace "$from","$($to + " $c")"
$c++
}
$result |Set-Content "$file" -Encoding UTF8

YuS_2
16-11-2021, 09:36
% { »
Тут присутствует одна "засада"... если в одной строке будет две замены, они будут с одним номером счетчика...

DJ Mogarych
16-11-2021, 09:39
В ТЗ об этой ситуации ничего не сказано, что мы будем додумывать за заказчика.

YuS_2
16-11-2021, 09:51
что мы будем додумывать за заказчика. »
тут (http://forum.oszone.net/post-2971996-5.html) - под спойлером "Вся строчка может выглядеть так"
и собственно, об уникальности замен:
Суть не в том что б пронумеровать яблоки и груши от 1 до n, а в том что б просто у каждой груши и яблока была своя цифра. Что б не было двух груш и двух яблок с одинаковой цифрой. »
так что, строго по ТЗ :)

DJ Mogarych,
На первый взгляд:
можно отлавливать совпадения:
(sls -lit "test.txt" -patt 'шаблон' -all).matches
и по индексу менять по шаблону с добавлением уникального счетчика...
Сейчас убегаю, позже попробую что-нибудь накропать, если никто не отпишется...

DJ Mogarych
16-11-2021, 13:20
Да, невнимательно читал историю вопроса, извиняюсь.

Тогда вот так:

$file = "D:\temp\japanese.txt"
$from = "日本語のテキスト"
$to = "Русские буквы"

$script:c = 0
$result = gc "$file" -Encoding UTF8 |% {
[regex]::Replace($_, $from, {$script:c++; $to + " $script:c"})
}
$result |Set-Content "$file" -Encoding UTF8

YuS_2
16-11-2021, 14:35
Тогда вот так »
Сделал сначала через remove-insert, потом подумал, что есть ведь replace()... собрался сюда постить, а тут уже есть, что-то подобное...
Но для разнообразия, пригодится (в моем варианте есть упрощение для PS 6.0 и выше):
$filein = '.\test.txt'
$fileout = '.\test_out.txt'
$find = '性交回数'
#$find = read-host 'введите строку замены, что'
$replace = 'ТЕКСТ'
#$replace = read-host 'ведите строку замены, чем'
$global:cnt = 1
$data = gc $filein -enc utf8 -raw
if ($psversiontable.psversion.major -gt 5){
$data = $data -replace $find, {$replace + " " +$cnt++}
} else {
$data = [regex]::replace($data,$find,{$replace + " " + $global:cnt++})
}
$data|out-file $fileout -enc utf8

vk_k14m@vk
16-11-2021, 17:10
Powershell: »
Не годится от слова совсем.
$from = "日本語のテキスト"
А что если после, или перед "日本語のテキスト" еще какой-то текст? Тогда перевод окажется в корне не верным. А может и вовсе сломать какой-то важный скрипт.
Искать нужно именно Variables.value(111)][72] = '夜這い'
Если это окажется Variables.value(111)][72] = 'の夜這い' или Variables.value(111)][72] = '夜這い日' или Variables.value(111)][73] = '夜這い' то замена уже неправильная

YuS_2
16-11-2021, 19:39
Не годится от слова совсем. »
"Железный" аргумент!

А что если после, или перед »
так и впишите то, что надо искать, также, как и то, чем надо менять... только там шаблон регулярного выражения, т.е. спецсимволы необходимо экранировать:
...
$find = "(?<=Variables\.value\(111\)\]\[72\] *\= *')夜這い(?=')"
$replace = 'ТЕКСТ ДЛЯ ЗАМЕНЫ'
...

любую часть шаблона можно вынести в интерактивный запрос на ввод и вводить его руками, либо копированием...

vk_k14m@vk
16-11-2021, 20:01
так и впишите то, что надо искать, также, как и то, чем надо менять... только там шаблон регулярного выражения, т.е. спецсимволы необходимо экранировать:
Код:
...
$find = "(?<=Variables\.value\(111\)\]\[72\] *\= *')夜這い(?=')"
$replace = 'ТЕКСТ ДЛЯ ЗАМЕНЫ'
...
любую часть шаблона можно вынести в интерактивный запрос на ввод и вводить его руками, либо копированием... »
Если б я понимал как этот шаблон работает и как его менять под свои нужны, я бы не задавал тут вопросы. То что ты знаешь как оно работает не говорит о том что и остальные знают. Для меня это просто набор символов которые непонятно что делают.

В данном случае нужно либо писать полностью рабочий шаблон который сам по себе делает то что нужно без каких либо изменений.
Либо полностью объяснять каждый символ в шаблоне что б любой кто это прочитает понимал как он работает и как его можно изменить.




© OSzone.net 2001-2012