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 | $+ สตริงที่ตรงกับกลุ่มที่จับคู่สำเร็จล่าสุดในการจับคู่รูปแบบสุดท้าย |