内建变量

内建变量是全局变量的一种,但是其中的值并非只限于全局使用。

下面是以作用范围不同区分的一些内建变量例子:

区域范围

$~

在当前的作用域之内,上一次所匹配成功的信息(MatchData)。设置此变量会改变 $&、$1 ... $9 等变量的值。

相当于 Regexp.last_match

$&

在当前的作用域之内,上一次所匹配成功的字符串,若匹配失败,此变量之值则为 nil 。

相当于 Regexp.last_match[0]

$1
$2
$3 ...

分别对应与索引号相同的的上次匹配成功的括号匹配值,若匹配失败则为 nil 。

相当于 Regexp.last_match[1], Regexp.last_match[2], ...

全局范围

$!

最近抛出的异常的信息。由 raise 进行设置。

$DEBUG

除错模式标记,RGSS在游戏测试时设置此标记。

在除错模式,异常处理的运行方式与一般运行时有所不同,但是对于 RGSS 不需要知道这些。