-1

シナリオ:

a = 'some%20string';

URI(a) # スロー

URI::InvalidURIError: bad URI(is not URI?)

文字列を URI に渡す前に、その文字列が有効な URI かどうかを確認するにはどうすればよいですか?

4

2 に答える 2

2

要求された元のメソッドを引き続き使用できます。何らかのエラー処理でラップするだけです。

require 'uri'

u = nil
begin
  u = URI('hi`there')
rescue URI::InvalidURIError => e
  puts "error: #{e}"  #handle error
end

p u if u  #do something if successful
于 2013-08-21T21:11:24.323 に答える