正则表达式匹配有效的Ruby本地变量名称

kol*_*rie 5 ruby regex variables

有谁知道有效的Ruby变量名称的规则?可以使用RegEx进行匹配吗?

更新:这是我到目前为止所能提出的:

^[_a-z][a-zA-Z0-9_]+$
Run Code Online (Sandbox Code Playgroud)

这看起来是对的吗?

Abo*_*uby 8

标识符非常简单.它们以字母或下划线开头,包含字母,下划线和数字. 局部变量不能(或不应该?)以大写字母开头,所以你可以使用像这样的正则表达式.

/^[a-z_][a-zA-Z_0-9]*$/
Run Code Online (Sandbox Code Playgroud)

  • @DigitalRoss:据我所知,局部变量不能包含`?`或`!`. (3认同)
  • `+`应该是`*`,因为`a`和`_`是有效的变量名. (3认同)