From 20c1f1aec6f29a87d738897f80242c6dff4c808b Mon Sep 17 00:00:00 2001 From: nicm Date: Sun, 24 Nov 2019 18:37:23 +0000 Subject: [PATCH] Only substitute patterns starting with ^ once. --- regsub.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/regsub.c b/regsub.c index 89355bef..199b2171 100644 --- a/regsub.c +++ b/regsub.c @@ -107,6 +107,12 @@ regsub(const char *pattern, const char *with, const char *text, int flags) start = m[0].rm_eo + 1; empty = 1; } + + /* Stop now if anchored to start. */ + if (*pattern == '^') { + regsub_copy(&buf, &len, text, start, end); + break; + } } buf[len] = '\0';