お世話になります。
Rubyのg_sub
で文字列の置換がうまくいきません。
\
のエスケープには\
が使えると書いてあり、試したのですがうまく置換されません。
うまく置換できる方法をご教授いただけないでしょうか?
Ruby.ver: 2.5.3
【置換前文字列】
"<div class=data-user_id=\"100\" data-app_id=\"200\"</div>"
【得たい文字列】
"<div class=data-user_id=\"300\" data-app_id=\"200\"</div>"
下記に実行結果を示します。
terminal
1~ $ irb 2irb(main):001:0> body = "<div class=data-user_id=\"100\" data-app_id=\"200\"</div>" 3=> "<div class=data-user_id=\"100\" data-app_id=\"200\"</div>" 4irb(main):002:0> body.gsub(/data-user_id=\"\d{3}\"/, "300") 5=> "<div class=300 data-app_id=\"200\"</div>" 6\ここまでは置換されているので、マッチングとしては問題ないと思われる 7irb(main):003:0> body = "<div class=data-user_id=\"100\" data-app_id=\"200\"</div>" 8=> "<div class=data-user_id=\"100\" data-app_id=\"200\"</div>" 9irb(main):004:0> body.gsub(/data-user_id=\"\d{3}\"/, "data-user_id=\"300\"") 10irb(main):005:1" 11\スラッシュをエスケープしているつもりができていない
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。