Lines Matching +defs:match +defs:end
88 regmatch_t *match;
411 if (n <= 1 && (match[0].rm_so > le))
412 cspace(&SS, s, match[0].rm_so - le, APPEND);
415 if (lastempty || (match[0].rm_so - le) ||
416 match[0].rm_so != match[0].rm_eo) {
418 /* Want this match: append replacement. */
423 /* Want a later match: append original. */
424 if (match[0].rm_eo - le)
425 cspace(&SS, s, match[0].rm_eo - le,
431 /* Move past this match. */
432 s = ps + match[0].rm_eo;
433 slen = psl - match[0].rm_eo;
434 le = match[0].rm_eo;
437 * After a zero-length match, advance one byte,
438 * and at the end of the line, terminate.
440 if (match[0].rm_so == match[0].rm_eo) {
677 match[0].rm_so = start;
678 match[0].rm_eo = stop;
681 nomatch ? 0 : maxnsub + 1, match, eflags | REG_STARTEND);
693 * regsub - perform substitutions after a regexp match
726 } else if (match[no].rm_so != -1 && match[no].rm_eo != -1) {
727 len = match[no].rm_eo - match[no].rm_so;
729 memmove(dst, string + match[no].rm_so, len);
769 cfclose(struct s_command *cp, struct s_command *end)
772 for (; cp != end; cp = cp->next)