gpt4 book ai didi

ruby-on-rails - 正则表达式 - 除 1-9 或 a-zA-Z 之外的任何可打印字符

转载 作者:行者123 更新时间:2023-12-03 15:12:10 25 4
gpt4 key购买 nike

在我的 Rails 应用程序中,我试图验证密码字符串是否包含任何不是数字 1-9 或字母字符 a-zA-Z 的可打印字符。

我知道“可打印字符”可以用 [:print:] 表示,“非数字或字母”可以表示为 /[^1-9a-z]/i ,但我不确定如何将两者结合起来。

例如,我尝试了以下方法,但似乎不起作用。我该如何正确修改?

# This code is inside my model
validates :password, format: { with: /(?=.*[[:print:]^1-9a-z])/i }

最佳答案

阅读您的要求和 looking at the ASCII table我最终得到了 [\x20-\x2F\x3A-\x40\x5B-\x60\x7B-\x7E] (或没有十六进制语法 [ -/:-@[-`{-~] )。

使用 POSIX character class

[:punct:]... punctuation (all graphic characters except letters and digits)



看起来,这可以用 just punctuation and space表示.
[[:punct:] ]

enter image description here

关于ruby-on-rails - 正则表达式 - 除 1-9 或 a-zA-Z 之外的任何可打印字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58925663/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com