| www.delorie.com/gnu/docs/guile/guile_199.html | search |
![]() Buy GNU books! | |
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
A match structure is the object returned by string-match and
regexp-exec. It describes which portion of a string, if any,
matched the given regular expression. Match structures include: a
reference to the string that was checked for matches; the starting and
ending positions of the regexp match; and, if the regexp included any
parenthesized subexpressions, the starting and ending positions of each
submatch.
In each of the regexp match functions described below, the match
argument must be a match structure returned by a previous call to
string-match or regexp-exec. Most of these functions
return some information about the original target string that was
matched against a regular expression; we will call that string
target for easy reference.
#t if obj is a match structure returned by a
previous call to regexp-exec, or #f otherwise.
#f.
(define s (string-match "[0-9][0-9][0-9][0-9]" "blah2002foo")) (match:substring s) => "2002" ;; match starting at offset 6 in the string (match:substring (string-match "[0-9][0-9][0-9][0-9]" "blah987654" 6)) => "7654" |
In the following example, the result is 4, since the match starts at character index 4:
(define s (string-match "[0-9][0-9][0-9][0-9]" "blah2002foo")) (match:start s) => 4 |
In the following example, the result is 8, since the match runs between characters 4 and 8 (i.e. the "2002").
(define s (string-match "[0-9][0-9][0-9][0-9]" "blah2002foo")) (match:end s) => 8 |
(define s (string-match "[0-9][0-9][0-9][0-9]" "blah2002foo")) (match:prefix s) => "blah" |
(define s (string-match "[0-9][0-9][0-9][0-9]" "blah2002foo")) (match:suffix s) => "foo" |
(define s (string-match "[0-9][0-9][0-9][0-9]" "blah2002foo")) (match:string s) => "blah2002foo" |
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
| webmaster donations bookstore | delorie software privacy |
| Copyright © 2003 by The Free Software Foundation | Updated Jun 2003 |