Я хочу проанализировать этот URL, используя ruby, чтобы получить идентификатор 33: http://www.domain.com/?id=33
http://www.domain.com/?id=33
Как бы я это сделал?
Вы можете использовать регулярное выражение, но вам лучше использовать библиотеки, чтобы убедиться, что вы правильно обрабатываете все различные особенности URL:
require 'uri' require 'cgi' h = CGI.parse(URI.parse('http://www.domain.com/?id=33').query) id = h['id'][0].to_i # You now have the id parameter as a Fixnum
В качестве бонуса это даст вам некоторое представление о стандартных библиотеках.
Вы можете использовать регулярное выражение через совпадение, например
id = url.match(/.*\=(\d+)/)[1]
, где url = "http://www.domain.com/?id=33"
ian.
С регулярным выражением типа /\d+\z/. Вы можете создать такой, например, используя rubular . Данное выражение извлекает идентификатор при условии, что никакие другие символы не следуют за идентификатором, а сам идентификатор содержит только цифры.
/\d+\z/