スリ飯屋Malankaのフリーエンジニアな日々

IT実務未経験から約1年、東京でフリーランスのRuby on Railsエンジニアに転職。約2年半、大阪中崎町でスリランカカレーの間借りしてました。フリーランスエンジニアになるためのノウハウ、スリランカの事を発信していきます。

【Ruby】aタグのhref属性を書き換えて、target="_blank"も付与する方法【gsub】

【Ruby】aタグのrel属性を書き換えて、target="_blank"も付与する方法【gsub】

こんにちは、mahです。

このブログでは、僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、ノウハウなどを書いていきます。

今回は、aタグのrel属性を書き換えて、target="_blank"も付与する方法 についてです。

結論

gsubを使って書き換えます。

String#gsub (Ruby 2.7.0 リファレンスマニュアル)

サンプルコード

  • "<a class="global-header-link" href="/about" rel="nofollow">About</a>"

上記のようなaタグを、

  • "<a class=\"global-header-link\" href=\"/about\" target=\"_blank\" rel=\"noopener\">About</a>"

のように書き換える例です。

Rails Consoleで確認します。

[16] pry(main)> '<a class="global-header-link" href="/about" rel="nofollow">About</a>'.gsub('rel="nofollow"', "rel='nofollow noopener' target='_blank'")

#=> "<a class=\"global-header-link\" href=\"/about\" rel='nofollow noopener' target='_blank'>About</a>"

このようにすれば実現可能です。

また、aタグからhref属性の値を正規表現で抽出する方法 について、下記の記事でまとめています。

aタグの加工をする際の参考にしてみてください。

www.malanka.tech


以上、aタグのrel属性を書き換えて、target="_blank"も付与する方法 についてでした。

少しでも同じ問題で困っている方の参考になれば幸いです。

このブログでは、僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、ノウハウなどを書いています。

  • 「フリーエンジニアになりたい!」

という方は、下記の記事で、

  • 【必読】未経験からフリーランスエンジニアになるため必要な5つの行動

  • 【実体験】高卒文系が1年でRailsのフリーエンジニアになった話

  • 【完璧!】フリーエンジニアの案件面談対策 〜全20問〜

  • 【好印象!】フリーエンジニアのスキルシートの書き方【5つのポイント】

を紹介していますので、よかったらチェックしてみてください。

全て実体験 です。

www.malanka.tech

www.malanka.tech

www.malanka.tech

www.malanka.tech

最後までお読み頂きありがとうございました★