URL を表す文字列があるとします。
http://www.mysite.com/somepage.aspx?id=33
..スラッシュと疑問符をエスケープしたい:
http:\/\/www.mysite.com\/somepage.aspx\?id=33
gsub経由でこれを行うにはどうすればよいですか? 私はそこにいくつかの正規表現をいじっていますが、まだ勝利の公式を見つけていません。
使用することをお勧めします
url = url.gsub(/(?=[\/?])/, '\\')
ここに示すように
url = 'http://www.mysite.com/somepage.aspx?id=33'
url = url.gsub(/(?=[\/?])/, '\\')
puts url
出力
http:\/\/www.mysite.com\/somepage.aspx\?id=33
これはどうresult = searchText.gsub(/(\/|\?)/, "\\\\$1")
ブロックを使用して読みやすくすることをお勧めします。
url.gsub(/[\/?]/) { |c| "\\#{c}" }