开发手册 欢迎您!
软件开发者资料库

Ruby - 预定义变量

Ruby预定义变量 - 从简单和简单的步骤学习Ruby,从基本到高级概念,包括概述,环境设置,语法,类,变量,运算符,注释,If ... else,case,除非,循环,文件,I / O,函数,对象,TK,范围,迭代器,数组,字符串,方法,块,异常,面向对象,正则表达式,DBI,多线程,哈希,日期和时间,模块,LDAP,Web服务,Web编程,发送电子邮件,套接字编程,脚本语言,预定义常量,关联工具。

Ruby的预定义变量会影响整个程序的行为,因此不建议在库中使用它们.

大多数预定义变量中的值可以通过其他方式访问.

下表列出了所有Ruby的预定义变量.

Sr.No.变量名称&描述


1

$!

引发的最后一个异常对象.也可以使用=>访问异常对象.在 rescue 子句中.

2

$@

引发最后一个异常的堆栈 backtrace . stack backtrace 信息可以通过最后一个异常的异常#backtrace方法检索.

3

$/

输入记录分隔符(换行符)默认情况下). 获取,readline,等,将他们的输入记录分隔符作为可选参数.

4

$ \

输出记录分隔符( nil默认情况下.)

5

$,

print参数和Array#join之间的输出分隔符(默认为nil).您可以明确指定分隔符到Array#join.

6

&dollar ;;

split的默认分隔符(默认为nil).您可以为String#split明确指定分隔符.

7

$.

从当前输入文件读取的最后一行的编号.相当于ARGF.lineno.

8

$<

ARGF的同义词.

9

$>

$ defout的同义词.

10

$ 0

正在执行的当前Ruby程序的名称.

11

$$

正在执行的当前Ruby程序的进程pid.

12

$?

最后退出状态流程终止.

13

$:

$ LOAD_PATH的同义词.

14

$ DEBUG

如果-d或--debug命令行op,则为True指定了.

15

$ defout

print printf 的目标输出( $ stdout 默认情况下.)

16

$ F

当-a时,从 split 接收输出的变量是指定.如果-a命令行选项与-p或-n选项一起指定,则设置此变量.

17

$ FILENAME

文件名目前正在阅读ARGF.相当于ARGF.filename.

18

$ LOAD_PATH

使用load和require方法加载文件时,包含要搜索的目录的数组.

19

$SAFE

安全等级

0 → 不对外部提供的(受污染的)数据执行检查. (默认)

1 → 禁止使用受污染数据的潜在危险操作.

2 → 禁止对流程和文件进行潜在危险的操作.

3 → 所有新创建的对象都被视为污染.

4 → 禁止修改全局数据.

20

$ stdin

标准输入(默认为STDIN).

21

$ stdout

标准输出(默认为STDOUT).

22

$ stderr

标准错误(默认为STDERR).

23

$ VERBOSE

如果指定了-v,-w或--verbose命令行选项,则为真.

24

$  -  x

解释器选项-x的值(x = 0,a,d,F,i,K,l,p,v).这些选项列在下面

25

$ -0

解释器选项-x的值和$/的别名.

26

$ -a

如果设置了选项-a,则解释器选项-x的值为true.只读.

27

$ -d

解释器选项-x的值和$ DEBUG的别名

28

$ -F

解释器选项-x的值和$;的别名.

29

$ -i

解释器选项的值-x和in-place-edit模式,保持扩展名,否则为nil.可以启用或禁用就地编辑模式.

30

$ -I

解释器选项-x的值和$:的别名.

31

&dollar ; -l

解释器选项-x的值,如果选项-lis设置,则为true.只读.

32

$ -p

解释器选项-x的值,如果选项-pis,则为true.只读.

33

$ _

本地变量,当前范围内的get或readline读取的最后一个字符串.

34

$〜

与最后一场比赛有关的局部变量 MatchData .正则表达式#matse方法返回最后一个匹配信息.

35

$ n($ 1,$ 2,$ 3 ......)

在最后一个模式匹配的第n组中匹配的字符串.等价于m [n],其中m是 MatchData 对象.

36

$&

最后一个模式中匹配的字符串比赛.等价于m [0],其中m是 MatchData 对象.

37

$`

最后一场比赛前的字符串模式匹配.相当于m.pre_match,其中m是 MatchData 对象.

38

$'

最后一个模式中匹配后的字符串比赛.相当于m.post_match,其中m是MatchData对象.

39

$+

与上次模式匹配中最后一个成功匹配的组对应的字符串.