我需要简化一些报告的url字符串,有时我们的url字符串在不同的部分有gclid
参数:https://www.website.com/colors/blue?src=camp_id1&gclid=Cj0KCQjwoInnBRDDARIsANBVyASfVUCg4ShKaAq4q8cX6xgB4kYj-oRGEPuO5UuUaAnZi2zD7yQU684aAo3KEALw_wcB
或https://www.website.com/colors/blue?gclid=Cj0KCQjwoInnBRDDARIsANBVyASfVUCg4ShKaAq4q8cX6xgB4kYj-oRGEPuO5UuUaAnZi2zD7yQU684aAo3KEALw_wcB&src=camp_id1
或https://www.website.com/colors/blue?page=2&gclid=Cj0KCQjwoInnBRDDARIsANBVyASfVUCg4ShKaAq4q8cX6xgB4kYj-oRGEPuO5UuUaAnZi2zD7yQU684aAo3KEALw_wcB&src=camp_id1
或https://www.website.com/colors/blue?page=2&src=camp_id1
所以有所有这些变化的网址。有时它们包含gclid
,有时则不包含。它们通常位于url中的不同部分。
在ruby中,如果没有gclid
子字符串,那么最简单的方法是什么?
最佳答案
.sub(/[\?&]gclid=[^&]*/, '')