Next: irregex replace, Previous: irregex compile, Up: irregex [Index]
Search for any instance of the pattern irx in str,
optionally between the given range. If a match is found, return a match
object, otherwise #f
. Match objects can be used to query the
selected substring or its submatches using the irregex-match-*
procedures below. Examples:
(irregex-search "[a-z]+" "123abc456") ⇒ ... ; match object (irregex-search "[a-z]+" "123456") ⇒ #f (irregex-search "foobar" "abcFOOBARdef") ⇒ #f (irregex-search (string->irregex "foobar" 'case-insensitive) "abcFOOBARdef") ⇒ ... ; match object
Matching follows the POSIX leftmost, longest semantics, when
searching. That is, of all possible matches in the string,
irregex-search
will return the match at the first position
(leftmost). If multiple matches are possible from that same first
position, the longest match is returned.
Like irregex-search
, but performs an anchored match against the
beginning and end of the string, without searching.
Examples:
(irregex-match '(w/nocase "foobar") "abcFOOBARdef") ⇒ #f (irregex-match '(w/nocase "foobar") "FOOBAR") ⇒ ... ; match object
Fetch the matched substring (or its start or end offset) at the given submatch index, or named submatch. The entire match is index 0, the first 1, etc. The default is index 0. Examples:
(irregex-match-substring (irregex-search "ciao" "hello ciao salut") 0) ⇒ "ciao" (let ((match (irregex-search "c(i(a(o)))" "hello ciao salut"))) ;;; 01234567890123456 (irregex-match-substring match) ⇒ "ciao" (irregex-match-substring match 0) ⇒ "ciao" (irregex-match-substring match 1) ⇒ "iao" (irregex-match-substring match 2) ⇒ "ao" (irregex-match-substring match 3) ⇒ "o" (irregex-match-start-index match 0) ⇒ 6 (irregex-match-past-index match 0)) ⇒ 10
Next: irregex replace, Previous: irregex compile, Up: irregex [Index]