【问题标题】:Locale sensitive character classes in regexp with validations?带有验证的正则表达式中的区域设置敏感字符类?
【发布时间】:2010-10-06 23:22:57
【问题描述】:
validates_format_of :first_name, :with => /\A\w+\Z/

如果名字中有非英文字符,则验证不会通过,例如Mölläinen。更改 Rails 语言环境无济于事。那么如何进行文化/区域敏感验证呢?

如果语言环境是EN,那么\w 应该映射到[a-zA-Z0-9_],但如果它是FI,那么它应该映射到[a-zA-Z0-9_äöåÄÖÅ] 等等。

【问题讨论】:

    标签: regex validation ruby-on-rails-3


    【解决方案1】:

    试试/\A[[:alpha:]]+\Z/。这应该是语言环境感知的,至少在 Ruby 1.9 中是这样。

    但您可能也希望允许其他字符。例如,Anna-Lena 在德国是一个通用名称。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-19
      • 2022-10-22
      • 2011-05-14
      • 2013-08-04
      • 1970-01-01
      • 2011-10-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多