У меня есть записи в коде, которые выглядят так

hit_power = 0,57

Эти записи имеют разные переменные, такие как 0.4 , 0.65 , 0.55 и т.д., И в каждом файле их содержится дюжина.

Я хочу заменить все записи hit_power= на hit_power=0.5 , но когда я попытаюсь найти hit_power= и заменить на hit_power=0.5 он заменит его, но прежний аргумент функции останется.

Например, я заменяю hit_power=0.65 на hit_power=0.5 , и в результате я получу hit_power=0.50.65 . Как удалить запись с помощью hit_power= function и заменить ее новой функцией и аргументом?

3 ответа3

4

Используйте совпадение регулярных выражений. Вот как:

Найти что: ^hit_power=[0-9.]+$

Заменить на: hit_power=0.5

Режим поиска: регулярное выражение

Примечание. Это лишь один из многих способов сопоставления правых значений.

0

Кажется, после уравнения hit_power = есть табулятор [или несколько пробелов]. Так что не могу найти фразу. Так есть ли способ найти строку с

 hit_power=

стереть строку, которую занимает фраза со всеми метками и аргументами после нее, а затем заменить новой строкой на новую фразу? Это было бы так:

Найти все строки с

hit_power

Удалите строку [s] с hit_power и все пробелы, табуляции, пометки, аргументы после нее, например, полностью:

hit_power= 0.57
hit_power= 0.43
hit_power= 0.52

и заменить на

hit_power = 0,5
hit_power = 0,5
hit_power = 0,5

Формула, которая была предоставлена некоторыми ответами в этой теме, была достаточной, чтобы найти hit_power = x и заменить его на hit_power = 0.5. Но он не может найти фразу, когда есть пробелы / табуляция после = mark.

Вот фактический код http://pastebin.com/eLagUcCB

Хорошо, нашел ответ, просто нужно использовать формулу

найти

hit_power.*

Заменить

hit_power=0.5

Тем не менее, спасибо за ответы!

0

Я только что заметил, что регулярное выражение в ответе Алекса использует [0-9.] , Но точка будет соответствовать любому символу, и я думаю, что Алекс хотел, чтобы она соответствовала буквальному десятичному знаку. Так что, вероятно, это должно быть ^hit_power=[0-9\.]+$ , С точкой без знака.

Если кто-то может отредактировать ответ Алекса, чтобы отразить это, я согласен, что это именно то решение, которое я бы использовал.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .