I think you're trying to do conditional validation in a roundabout way. Since you really just want to allow blanks, you can do it this way:
class Link < ActiveRecord::Base
Networks = [:facebook, :twitter, :quora, :pinterest]
attr_accessible *Networks
validates_format_of *Networks, :with => URI::regexp(%w(http https)), :allow_blank => true
end