Ruby - ตัวแปรที่กำหนดไว้ล่วงหน้า

ตัวแปรที่กำหนดไว้ล่วงหน้าของ Ruby มีผลต่อพฤติกรรมของโปรแกรมทั้งหมดดังนั้นจึงไม่แนะนำให้ใช้ในไลบรารี

ค่าในตัวแปรที่กำหนดไว้ล่วงหน้าส่วนใหญ่สามารถเข้าถึงได้ด้วยวิธีอื่น

ตารางต่อไปนี้แสดงตัวแปรที่กำหนดไว้ล่วงหน้าของ Ruby ทั้งหมด

ซีเนียร์ ชื่อตัวแปรและคำอธิบาย
1

$!

ยกวัตถุข้อยกเว้นสุดท้าย นอกจากนี้ยังสามารถเข้าถึงวัตถุข้อยกเว้นได้โดยใช้ => ในคำสั่งช่วยเหลือ

2

$@

สแต็กbacktraceสำหรับข้อยกเว้นสุดท้ายที่เพิ่มขึ้น ข้อมูล stack backtraceสามารถดึงมาได้โดย Exception # backtrace method ของข้อยกเว้นสุดท้าย

3

$/

ตัวคั่นเร็กคอร์ดอินพุต (ขึ้นบรรทัดใหม่ตามค่าเริ่มต้น) gets, readline และอื่น ๆ ใช้ตัวคั่นบันทึกอินพุตเป็นอาร์กิวเมนต์เสริม

4

$\

ตัวคั่นบันทึกเอาต์พุต (ศูนย์โดยค่าเริ่มต้น)

5

$,

ตัวคั่นเอาต์พุตระหว่างอาร์กิวเมนต์ที่จะพิมพ์และ Array # join (ศูนย์โดยค่าเริ่มต้น) คุณสามารถระบุตัวคั่นให้ชัดเจนกับ Array # join

6

$;

ตัวคั่นเริ่มต้นสำหรับการแยก (ศูนย์โดยค่าเริ่มต้น) คุณสามารถระบุตัวคั่นอย่างชัดเจนสำหรับ String # split

7

$.

จำนวนบรรทัดสุดท้ายที่อ่านจากไฟล์อินพุตปัจจุบัน เทียบเท่ากับ ARGF.lineno

8

$<

คำพ้องความหมายของ ARGF

9

$>

คำพ้องความหมายของ $ defout

10

$0

ชื่อของโปรแกรม Ruby ปัจจุบันที่กำลังดำเนินการ

11

$$

pid กระบวนการของโปรแกรม Ruby ปัจจุบันที่กำลังดำเนินการ

12

$?

สถานะการออกของกระบวนการสุดท้ายสิ้นสุดลง

13

$:

คำพ้องความหมายของ $ LOAD_PATH

14

$DEBUG

True หากระบุอ็อพชันบรรทัดคำสั่ง -d หรือ --debug

15

$defout

เอาต์พุตปลายทางสำหรับprintและprintf ( $ stdoutโดยค่าเริ่มต้น)

16

$F

ตัวแปรที่รับเอาต์พุตจากการแยกเมื่อระบุ -a ตัวแปรนี้ถูกตั้งค่าหากระบุอ็อพชัน -a command-line พร้อมกับอ็อพชัน -p หรือ -n

17

$FILENAME

ชื่อของไฟล์ที่กำลังอ่านจาก ARGF เทียบเท่ากับ ARGF.filename

18

$LOAD_PATH

อาร์เรย์ที่เก็บไดเร็กทอรีที่จะค้นหาเมื่อโหลดไฟล์ด้วยโหลดและต้องการเมธอด

19

$SAFE

ระดับความปลอดภัย

0 →ไม่มีการตรวจสอบข้อมูลที่ให้มาจากภายนอก (ที่ปนเปื้อน) (ค่าเริ่มต้น)

1 →ห้ามใช้งานที่อาจเป็นอันตรายโดยใช้ข้อมูลที่ปนเปื้อน

2 →การดำเนินการที่อาจเป็นอันตรายกับกระบวนการและไฟล์ไม่ได้รับอนุญาต

3 →วัตถุที่สร้างขึ้นใหม่ทั้งหมดจะถือว่าแปดเปื้อน

4 →ไม่อนุญาตให้แก้ไขข้อมูลส่วนกลาง

20

$stdin

อินพุตมาตรฐาน (STDIN โดยค่าเริ่มต้น)

21

$stdout

เอาต์พุตมาตรฐาน (STDOUT โดยค่าเริ่มต้น)

22

$stderr

ข้อผิดพลาดมาตรฐาน (STDERR โดยค่าเริ่มต้น)

23

$VERBOSE

True ถ้าระบุอ็อพชันบรรทัดคำสั่ง -v, -w หรือ --verbose

24

$- x

ค่าของตัวเลือกล่าม -x (x = 0, a, d, F, i, K, l, p, v) ตัวเลือกเหล่านี้แสดงอยู่ด้านล่าง

25

$-0

ค่าของตัวเลือกล่าม -x และนามแฝงของ $ /

26

$-a

ค่าของตัวเลือกตัวแปล -x และจริงหากตั้งค่าตัวเลือก -a อ่านเท่านั้น.

27

$-d

ค่าของตัวเลือกล่าม -x และนามแฝงของ $ DEBUG

28

$-F

ค่าของตัวเลือกล่าม -x และนามแฝงของ $ ;.

29

$-i

ค่าของตัวเลือกล่าม -x และโหมดแก้ไขในสถานที่เก็บส่วนขยายไว้มิฉะนั้นจะไม่มีค่า สามารถเปิดหรือปิดโหมดแก้ไขในสถานที่

30

$-I

ค่าของตัวเลือกล่าม -x และนามแฝงของ $ :.

31

$-l

ค่าของตัวเลือกตัวแปล -x และ true if option -lis set อ่านเท่านั้น.

32

$-p

ค่าของตัวเลือกตัวแปล -x และ true if option -pis set อ่านเท่านั้น.

33

$_

ตัวแปรโลคัลสตริงสุดท้ายที่อ่านโดย gets หรือ readline ในขอบเขตปัจจุบัน

34

$~

ตัวแปรท้องถิ่นMatchData ที่เกี่ยวข้องกับการแข่งขันล่าสุด วิธีการจับคู่ Regex # ส่งคืนข้อมูลการแข่งขันล่าสุด

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

$+

สตริงที่ตรงกับกลุ่มที่จับคู่สำเร็จล่าสุดในการจับคู่รูปแบบสุดท้าย