3

在 Rails 应用程序中,我在下面有这个当前的正则表达式验证器:

validates :characters, format: {with: /\A(([a-z0-9])+(-?[a-z0-9]+)*\s?)+\Z/, message: "can't be blank. Characters can only be [a-z 0-9 . # - +]" }

我对 Characters 的验证最初只允许小写字母和数字。现在我想允许额外的字符。# - +我现在如何构建我的正则表达式?

4

1 回答 1

6

根据您的问题,如果您想允许 az 、 0-9 和 .#-+ 只有正则表达式是:

/[a-z0-9.#+\-]/您的验证将如下所示:

validates :characters, format: {with: /[a-z0-9.#+\-]/, message: "can't be blank. Characters can only be [a-z 0-9 . # - +]" }

您甚至可以在http://rubular.com/上尝试一下。恕我直言,这是 ruby​​ 正则表达式的最佳去处。

于 2013-08-18T14:11:05.033 回答