Я изо всех сил пытаюсь понять, как заменить полные слова, содержащие определенные строки, я искал и пытался некоторое время, но все, с чем я сталкивался, либо не работает, либо заменяет слишком много,
чтобы привести пример того, что мне нужно именно, если у нас есть текст, давайте возьмем часть текста из костей в качестве примера.
My patience is waning
Is this entertaining?
Our patience is waning
Is this entertaining?
я хочу иметь возможность заменить каждое слово, содержащее «ing», на что-то другое, например, «boop», это должно привести к,
My patience is boop
Is this boop?
Our patience is boop
Is this boop?
моя проблема в основном заключается в том, что все, что я пытаюсь, заменяет только «ing» или все, что находится перед ним, а не только слово, которое его содержит.





Найти: \b\w+ing\b
Заменить boop
Демонстрация регулярных выражений
\b
граница между словом char (\w) и чем-то, что не является словом char
\w+
символы слова (a-z, A-Z, 0-9, _) (1 или более раз (соответствует максимально возможному количеству))
ing
'инг'
\b
граница между словом char (\w) и чем-то, что не является словом charЭта находка тоже работает \w*(ing)\w*
Да, но он потребляет группу захвата, которая не нужна в моей версии (облегченной)
Можно опустить ведущий \b :-)
Если вы хотите также заменить слова на ing в середине слова, используйте:
[a-z]*ing[a-z]*boopОбъяснение:
[a-z]* # 0 or more letters
ing # literally
[a-z]* # 0 or more letters
Скриншот (до):
Скриншот (после):
Всегда ли
ingстоит в конце слова?