From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from primenet.com.au (ns1.primenet.com.au [203.24.36.2]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id 53a6dd9d for ; Mon, 16 Dec 2019 21:27:48 +0000 (UTC) Received: (qmail 25853 invoked by alias); 16 Dec 2019 21:27:43 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: List-Unsubscribe: X-Seq: 45054 Received: (qmail 11706 invoked by uid 1010); 16 Dec 2019 21:27:43 -0000 X-Qmail-Scanner-Diagnostics: from mail-wr1-f43.google.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.102.1/25663. spamassassin: 3.4.2. Clear:RC:0(209.85.221.43):SA:0(-2.0/5.0):. Processed in 0.720577 secs); 16 Dec 2019 21:27:43 -0000 X-Envelope-From: stephane.chazelas@gmail.com X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: pass (ns1.primenet.com.au: SPF record at _netblocks.google.com designates 209.85.221.43 as permitted sender) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:message-id:mail-followup-to :references:mime-version:content-disposition:in-reply-to:user-agent; bh=eI09WlTK/K0d+Pm3JLXyijzgqtPC1Ai9FmAws1McBMQ=; b=s8ZI8hrhbU11KOAUBaC4vlvU7CMkRnw9DGxVdwG3eXrnr+O5y3JOp4Zq+lwObOch25 RL728l6JPuaOX73XcZDGxaNcln5MebYxEcARulxJCMA5iPh3z20/pYAyKV1hK3cldzfw VI4r77DaR7B/Iuu0LmkuzUrM421Tj/7ePEBUyP7nm5igEhexrd4Tot+iiRi6EEPd61Zv 7w+qeq3CUS8jwkHW/R3JQ3Gg1jGeEy0osnoQIZFqrPgTIH3Bs1LFfut2Rxu3wS+7I1oR 5XqEWNm200lnqY7Zo7CkFF9G+ZyQgULJcz9WCN2LBRKVe19cb8mjQ3WIEWnmzgXCVMkE np6A== X-Gm-Message-State: APjAAAUaPo9IoON8c1qWjcyheixOIo4qtRzUID0LHxRMMjQTjcEaYjoj 3jaRyFXESvF5eE7+8IfpfhNaEkje X-Google-Smtp-Source: APXvYqy0wM1PJ78E8z6p2RnZsrh123OwRA9zLsb9vDQo65MbmX3cOqMVFW482VRMiRDxo53qLUIbVg== X-Received: by 2002:adf:ef4e:: with SMTP id c14mr18635500wrp.142.1576531628473; Mon, 16 Dec 2019 13:27:08 -0800 (PST) Date: Mon, 16 Dec 2019 21:27:06 +0000 From: Stephane Chazelas To: Zsh hackers list Subject: Re: regexp-replace and ^, word boundary or look-behind operators Message-ID: <20191216212706.i3xvf6hn5h3jwkjh@chaz.gmail.com> Mail-Followup-To: Zsh hackers list References: <20191216211013.6opkv5sy4wvp3yn2@chaz.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20191216211013.6opkv5sy4wvp3yn2@chaz.gmail.com> User-Agent: NeoMutt/20180716 2019-12-16 21:10:13 +0000, Stephane Chazelas: > The way regexp-replace works means that these things: > > $ a='aaab'; regexp-replace a '^a' x; echo "$a" > xxxb > $ a='abab'; regexp-replace a '\'; echo $a > > $ set -o rematchpcre > $ a=xxx; regexp-replace a '(? yyy [...] FWIW, looks like some sed implementations (like that of the heirloom toolchest or busybox) or ksh93 have the same problem: $ echo xxx | busybox sed 's/\