ruby-on-rails - 验证 Ruby on Rails 中的 url 格式

标签 ruby-on-rails ruby validation

我想问是否有办法同时验证字符串作为网址或电子邮件?

例如:

validates_format_of :string, :with => [url_regex, email_regex]

string = 'http://domain.com' => valid
string = '<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="1a7f777b73765a7e75777b737434797577" rel="noreferrer noopener nofollow">[email protected]</a>' => valid

提前致谢!

最佳答案

根据Rails API你不能在数组或其他东西中传递两个正则表达式。解决方案是创建一个匹配 URL 和电子邮件地址的正则表达式,或者按照 Naveed 的建议创建自定义验证。话虽如此,我认为您无法使用正则表达式验证 URL。

关于ruby-on-rails - 验证 Ruby on Rails 中的 url 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9306890/

相关文章:

ruby-on-rails - 限制管理员使用 cancan 销毁自己的帐户

ruby-on-rails - Heroku 吃掉了我的自定义 HTTP header

ruby-on-rails - 获取带有空格分隔符的字符串列表的最有效方法

perl - 为什么我的 Perl 子例程返回 false,即使参数有效?

reactjs - React JS 中的电话号码验证 - 如何限制输入的类型和长度?

mysql - belongs_to 和引用实际上在表中创建关系吗?

Python 程序员 : Learning ruby (for rails)

ruby - 每行有大量列的Cassandra

ruby-on-rails - 是否可以将外部路由文件包含到主 routes.rb 文件中?

javascript - 验证 JavaScript 代码而不强制执行特定样式