Arrière-plan rapide: J'ai une chaîne qui contient des références à d'autres pages. Les pages sont liées à l'aide du format: "# 12". Un hachage suivi de l'identifiant de la pageRuby, gsub et regex
Dire que j'ai la chaîne suivante:
str = 'This string links to the pages #12 and #125'
Je connais déjà les ID des pages qui ont besoin de liaison:
page_ids = str.scan(/#(\d*)/).flatten
=> [12, 125]
Comment puis-je boucle à travers la page ids et lier le # 12 et # 125 à leurs pages respectives? Le problème que j'ai rencontré est si je fais ce qui suit (en rails):
page_ids.each do |id|
str = str.gsub(/##{id}/, link_to("##{id}", page_path(id))
end
Cela fonctionne bien pour # 12, mais elle relie la partie de # 125 à la page « 12 » avec l'ID de 12.
Toute aide serait géniale.
Merveilleuse. Je ne savais pas à propos de \ b. Vous monsieur, êtes un épargnant de vie. –