我在我的请求 URL 上使用 stringscanner 以获取用户当前选择的类别的名称,但我在处理空格和特殊字符时遇到了困难。
request.url.scan(/\?category=\w+/).to_s.gsub('?category=', '')
URL 示例后跟结果
http://localhost:3000/search?category=dog&search=&utf8=%E2%9C%93 => ["dog"]
http://localhost:3000/search?category=dog.com&search=&utf8=%E2%9C%93 => ["dog"]
http://localhost:3000/search?category=dog+cat&search=&utf8=%E2%9C%93 => ["dog"]
我正在尝试获取 ["dog"] ["dog.com"] 和 ["dog cat"],但目前卡住了。有任何想法吗?
注意:考虑从类别中删除空格并用破折号替换它们作为多个空格可能是有问题的,但如果可以创建一个函数来统治它们,那就太棒了。