คำสั่งทำซ้ำ Perl
Perl ทำซ้ำงบโดยตรงไปยังบรรทัดแรกของร่างกายวงเริ่มต้นทำซ้ำรอบนี้งบจะไม่ดำเนินการคำสั่งการทำซ้ำอย่างต่อเนื่องบล็อกคำสั่งไม่ได้ดำเนินการ
ยังคงงบสามารถใช้ในขณะที่และ foreach ห่วง
ไวยากรณ์
ไวยากรณ์เป็นดังนี้:
redo [LABEL]
ซึ่งค่ายเป็นตัวเลือก
ทำซ้ำคำสั่งฉลากปรับปรุงการอ้างอิงหมายถึงการควบคุมวงจรการไหลโดยตรงกับแถวแรกของบล็อกของงบที่เกี่ยวข้องกับป้ายรอบคัดเลือกเริ่มต้นและคำสั่งและดำเนินการต่อคำสั่งบล็อกจะไม่ทำงานหลังจากคำสั่งทำซ้ำ;
ทำซ้ำคำสั่ง LABEL ไม่มีปรับปรุงฉลากหมายถึงการไหลเวียนควบคุมเพื่อตรงไปยังแถวแรกของบล็อกปัจจุบันของงบเริ่มต้นและยังคงดำเนินการคำสั่งแทนคำสั่งหลังจากที่ทำซ้ำคำสั่งบล็อก;
ถ้าคุณอยู่ในห่วงหรือดำเนินการกับบล็อกของงบให้สำหรับรายการเพิ่มขึ้นทีละวงและดำเนินการต่อบล็อกของงบจะไม่สามารถดำเนินการ;
แผนภูมิการไหล
ตัวอย่าง
#/usr/bin/perl $a = 0; while($a < 10){ if( $a == 5 ){ $a = $a + 1; redo; } print "a = $a\n"; }continue{ $a = $a + 1; }
โปรแกรมข้างต้นผลลัพธ์คือ:
a = 0 a = 1 a = 2 a = 3 a = 4 a = 6 a = 7 a = 8 a = 9