ตัวอย่างเช่น หากมีไฟล์และไดเร็กทอรี:
/tmp/temp_dir/subdir_001/file_001.txt
/tmp/temp_dir/subdir_001/file_002.txt
/tmp/temp_dir/subdir_002/file_003.txt
/tmp/temp_dir/subdir_003/file_004.txt
และเนื้อหาเหล่านั้นมีเนื้อหาหลากหลายพร้อมบรรทัดเฉพาะที่ regex สามารถพบได้ ตัวอย่างเช่น นี่คือเนื้อหาของไฟล์ file_001.txt
:
abc cba
little boy writes -54321_12345 and goes to street 987
bca acb
little boy writes -12345_54321 and jumps to street 789
cab bac
สิ่งที่ฉันสนใจคือบรรทัดเหล่านั้นที่ขึ้นต้นด้วย little boy writes
ฉันใช้รูปแบบ regex นี้เพื่อค้นหาข้อมูลสำคัญที่ฉันต้องการบันทึกเป็นเอาต์พุต: little boy writes (\-\d+\_\d+).*street (\d+)
ฉันจะค้นหาแบบวนซ้ำและส่งออกเฉพาะสตริงที่ตรงกันได้อย่างไร ดังนั้นในไฟล์เอาต์พุตฉันจะมีสิ่งนี้เท่านั้น:
54321_12345 987
12345_54321 789