บอกว่าฉันมีไฟล์:
# file: 'test.txt'
foobar bash 1
bash
foobar happy
foobar
ฉันแค่อยากรู้ว่าคำใดปรากฏหลัง "foobar" ดังนั้นฉันสามารถใช้ regex นี้:
"foobar \(\w\+\)"
วงเล็บแสดงว่าฉันมีความสนใจเป็นพิเศษในคำทันทีหลังจาก foobar แต่เมื่อฉันทำgrep "foobar \(\w\+\)" test.txt
ฉันจะได้ทั้งบรรทัดที่ตรงกับ regex ทั้งหมดมากกว่าเพียงแค่ "คำหลังจาก foobar":
foobar bash 1
foobar happy
ฉันชอบที่ผลลัพธ์ของคำสั่งนั้นจะเป็นดังนี้:
bash
happy
มีวิธีบอก grep ให้แสดงเฉพาะรายการที่ตรงกับการจัดกลุ่ม (หรือการจัดกลุ่มเฉพาะ) ในนิพจน์ทั่วไปหรือไม่?
perl -lne 'print $1 if /foobar (\w+)/' < test.txt