Làm cách nào để thực hiện hành động trên tất cả các nhóm phù hợp khi mẫu khớp với nhiều lần trong một dòng?awk trích xuất nhiều nhóm từ mỗi dòng
Để minh họa, tôi muốn tìm kiếm /Hello! (\d+)/
và sử dụng các con số, ví dụ, in chúng ra hoặc tổng hợp, vì vậy cho đầu vào
abcHello! 200 300 Hello! Hello! 400z3
ads
Hello! 0
Nếu tôi đã quyết định in chúng ra, tôi mong đợi đầu ra của
200
400
0
cho nhân viên của Google: lưu ý rằng với 'gawk', aka. "GNU awk", bạn thực sự có thể làm những gì tiêu đề nói (không phải là câu hỏi) trong một dòng (ví dụ: thông qua. Piping): '| gawk -v RS = '' '{in gensub (/()() /, "\\ 1 \\ 2", "g"); } '': D Điều này hỗ trợ đa dòng (do' -v RS =' '') và các nhóm con phù hợp (do sử dụng gensub' của gawk) !!! – Andrew