Rails正则表达式警告:字符类有' - '没有转义

Wor*_*ica 8 regex ruby-on-rails

我对regex soo了解不多,我只是找到一些并尝试使用它.

为什么我这个正则表达式有这个错误:

warning: character class has '-' without escape: /[a-zA-Z0-9-._ ]/
Run Code Online (Sandbox Code Playgroud)

这有什么不对?

验证应该只有字母,数字和" - ","." , "_", " " (空格处)

Bra*_*raj 15

连字符在正则表达式中具有特殊含义,例如 [a-z]表示a到z字符.

如果你想匹配-那么它应该被转义或者在类的结束(或开始).

[a-zA-Z0-9._ -]
Run Code Online (Sandbox Code Playgroud)

要么

[-a-zA-Z0-9-._ ]
Run Code Online (Sandbox Code Playgroud)

要么

[a-zA-Z0-9\-._ ]
Run Code Online (Sandbox Code Playgroud)

阅读更多 在正则表达式字符括号中包含连字符?