Можете ли вы сопоставить слова без совпадения частей слов с одинаковым написанием? - PullRequest
2 голосов
/ 06 марта 2019

Мне было интересно, есть ли способ заменить независимые слова в строке, не меняя части слов с одинаковым написанием.Например, можно конвертировать:

a = "hey how is the heyday"

в:

"wrong how is the heyday"

Есть ли способ сделать это?

Это не будет работать:

a.gsub! "hey", "wrong"
# => "wrong how is the wrongday" 

1 Ответ

1 голос
/ 06 марта 2019

Как и другие люди в комментариях, вы можете сделать это с помощью регулярного выражения в gsub

  a = "hey how is the heyday"
  a.gsub(/hey\b/,'wrong')

Регулярное выражение здесь ищет слово hey с границей слова. Но также обратите внимание, что когда вы используете gsub!, вы изменяете переменную, для которой вызываете его. Если вы хотите присвоить новой переменной результат, используйте gsub без перерыва.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...