Используйте блочную форму gsub
и замените ваши \3
ссылки на $3
глобальные:
my_map.gsub(/(\shref=)(\")(\d+)/) { %Q{ href="/created_path/#{$3}" title="#{AnotherObject.find($3)"} }
Я также переключился на %Q{}
для цитирования, чтобы избежать путаницы в смешивании и объединении цитат.
Второй аргумент в форме строки замены gsub
(т. Е. Версия gsub
, которую вы пытаетесь использовать) будет оценен и объединен до вызова gsub
и ** до ** доступно значение \3
, поэтому оно не будет работать.
Кроме того, есть ли метод, который вы должны вызывать для того, что AnotherObject.find($3)
возвращает?