| (awk next-record-expr |  |      (record field-id ...) |  |      maybe-counter |  |      ((state-variable init-expr) ...) |  |      maybe-continue |  |   clause ...) |  
  | 
|   | 
| maybe-counter |   | = |   |  |  |   |   | | |   | id |  |   |   |   |   |   |  | maybe-continue |   | = |   |  |  |   |   | | |   | id |  |   |   |   |   |   |  | clause |   | = |   | (test body ...+) |  |   |   | | |   | (test => procedure-expr) |  |   |   | | |   | (/ regexp-str / (id-or-false ...+) body ...+) |  |   |   | | |   | (range excl-start-test excl-stop-test body ...+) |  |   |   | | |   | (:range incl-start-test excl-stop-test body ...+) |  |   |   | | |   | (range: excl-start-test incl-stop-test body ...+) |  |   |   | | |   | (:range: incl-start-test incl-stop-test body ...+) |  |   |   | | |   | (else body ...+) |  |   |   | | |   | (after body ...+) |  |   |   |   |   |   |  | test |   | = |   | integer |  |   |   | | |   | regexp-string |  |   |   | | |   | expr |  |   |   |   |   |   |  | excl-start-test |   | = |   | test |  |   |   |   |   |   |  | excl-stop-test |   | = |   | test |  |   |   |   |   |   |  | incl-start-test |   | = |   | test |  |   |   |   |   |   |  | incl-stop-test |   | = |   | test |  |   |   |   |   |   |  | id-or-false |   | = |   | id |  |   |   | | |   | #f |  
  | 
Extracts a start position, end position, or substring corresponding to
a match. The first argument is the value supplied to the procedure
after 
=> in a 
awk clause or the result of
regexp-exec.
Matches a regexp to a string, returning a record compatible with
match:start, etc.