我正在搜索只有字母或数字或两者的字符串。我怎么能为此写一个正则表达式?
答案 0 :(得分:5)
您可以使用以下regex
来检查字符串是否包含字母和/或数字
^[a-zA-Z0-9]+$
<强>解释强>
^
:以[]
:角色等级a-zA-Z
:匹配任何字母0-9
:匹配任何数字+
:与之前的字符匹配一次或多次$
:结尾答案 1 :(得分:3)
"abc&@*(2743438" !~ /[^a-z0-9]/i # => false
"abc2743438" !~ /[^a-z0-9]/i # => true
答案 2 :(得分:0)
该示例避免使用多行锚( ^ 或 $ )(这可能会带来安全风险),因此最好使用 \ A 和 \ z ,或者在Rails中添加:multiline => true选项。 仅字母和数字:
/\A[a-zA-Z0-9]+\z/
或者,如果您也想离开-和_字符,也要退出
:/\A[a-zA-Z0-9_\-]+\z/