1

我想更改在我的应用程序中定义有效电子邮件的正则表达式。我正在尝试在 config/initializers/devise.rb 中执行此操作。为了检查正则表达式是否有效,我尝试从简单的事情开始,例如

config.email_regexp = /\d+/

当那不起作用时,我想也许我对 ruby​​ 的正则表达式语法的了解已经关闭并尝试了我认为是一个超级简单的正则表达式

config.email_regexp = /a/

虽然更改以下内容对允许的密码有影响,但前两行似乎没有效果。

config.password_length = 2..128

为了修改正则表达式验证电子邮件,我还应该做什么?(在我进行了这些修改之后,我重新启动了服务器以确保更改被拾取。)

4

2 回答 2

0

你知道那些正则表达式的匹配吗?

/\d+/ 匹配一个或多个数字,而 /a/ 匹配单个 'a'。这会使几乎每个电子邮件地址都无效,不是吗?

查看此站点以测试您的正则表达式,看看是否有帮助:

http://rubular.com/

于 2012-07-10T00:08:21.197 回答
-1

我遇到了类似的问题,这次是在将 email_regexp 设置为其他地方定义的常量时。我在https://github.com/plataformatec/devise/issues/2233上报告了它,并通过一些失败/通过的测试用例比较来尝试确定它。

于 2013-01-22T20:59:18.633 回答