Ruby on rails 使用正则表达式验证文本输入中的Umlaut

Ruby on rails 使用正则表达式验证文本输入中的Umlaut,ruby-on-rails,Ruby On Rails,有人知道如何将Umlauts添加到正则表达式以验证rails文本输入的格式吗 我试过这个,但它完全破坏了轨道: validates :first_name, :presence => true, :allow_blank => false, :format => { :with => /\A[a-z A-ZäöüÄÖÜ]+\z/} 这应该是可行的,但是通过添加作为第一行(假设utf-8),确保ruby本身知道您在代码中使用的编码: 让我知道这是否有帮助,但请确保ruby

有人知道如何将Umlauts添加到正则表达式以验证rails文本输入的格式吗

我试过这个,但它完全破坏了轨道:

validates :first_name, :presence => true, :allow_blank => false, :format => { :with => /\A[a-z A-ZäöüÄÖÜ]+\z/}

这应该是可行的,但是通过添加作为第一行(假设utf-8),确保ruby本身知道您在代码中使用的编码:


让我知道这是否有帮助,但请确保ruby本身知道您在代码中使用的编码,并将其添加为第一行(假设为utf-8):

如果有帮助,请告诉我试试以下方法:

validates :first_name, :presence => true, :allow_blank => false, :format => { :with => /\A[[:alpha:]]+\z/}
试试这个:

validates :first_name, :presence => true, :allow_blank => false, :format => { :with => /\A[[:alpha:]]+\z/}

Rails不再中断,但验证失败。您是否有要通过验证的字符串示例?这些应该是有效的输入:Straße Gässlein edit:您的示例验证,但whta代表什么?alpha表示POSIX符号中的任何字母字符a到Z或a到Z。给定的正则表达式一次只验证一个字符串(没有空格)。我同意,如果您在文本字段中选择有效的umlaut字符,就会发出气味。但是如果你这样做(这是最初的假设),那么你必须在代码中使用utf8,我的答案很好:)Rails不再中断,但验证失败。你有一个字符串的例子,你想通过验证吗?这些应该是有效的输入:Straße Gässlein edit:你的例子验证了,但whta是[:alpha:]代表?Alpha是指POSIX符号中的任何字母字符A到Z或A到Z。给定的正则表达式一次只验证一个字符串(没有空格)。我同意,如果您在文本字段中选择有效的umlaut字符,就会发出气味。但是如果你这样做(这是最初的假设),那么你必须在代码中使用utf8,我的答案很好:)