From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=0.3 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE,RDNS_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 Received: (qmail 24646 invoked from network); 10 Mar 2020 20:05:19 -0000 Received-SPF: pass (primenet.com.au: domain of zsh.org designates 203.24.36.2 as permitted sender) receiver=inbox.vuxu.org; client-ip=203.24.36.2 envelope-from= Received: from unknown (HELO primenet.com.au) (203.24.36.2) by inbox.vuxu.org with ESMTP; 10 Mar 2020 20:05:19 -0000 Received: (qmail 18892 invoked by alias); 10 Mar 2020 20:05:06 -0000 Mailing-List: contact zsh-users-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Users List List-Post: List-Help: List-Unsubscribe: X-Seq: 24721 Received: (qmail 5479 invoked by uid 1010); 10 Mar 2020 20:05:06 -0000 X-Qmail-Scanner-Diagnostics: from mail-yw1-f52.google.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.102.2/25744. spamassassin: 3.4.2. Clear:RC:0(209.85.161.52):SA:0(-2.0/5.0):. Processed in 11.394506 secs); 10 Mar 2020 20:05:06 -0000 X-Envelope-From: ross.goldberg@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.161.52 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:mime-version:from:date:message-id:subject:to; bh=e4/rnhZDDTurfI78gJMokOI9evtOjbcbYrSrDMtYhcg=; b=YYjafG8llZwZfw3wmvvFhaalk3k02VqWHCxJRH9pbzqpW/G2K82q332Z/uyAjS7HJ6 JzPi7X+DVrckziKXIJ5DhO0ErcjSlD+ntieg6m9k2SmO9v0szedFCwcicXb4EosHhcx7 ZOH8Qqe5n2Z0vCJiJNuSz5YqqHaNt5TEvdmKLWnlQlKcOqlCOW2QN9IrB77Kmun8Yz0H zjEAe0QfXXxninqjTDD54c5qwq6RnYs1UPjos4VbFThGgl+1IblW6WziRoWB9I5pjZtP oodt8u+YpDcLamb06CfWH2p6GUKCmFydfAhJya2/RVemYict/BQLWRMyy5JC0MzlukN1 9YzA== X-Gm-Message-State: ANhLgQ0elNeRKTmFcKqHvFYzFxHDQFuDfjTY1zZuraEA5RNd+PMm5Ng/ mAXbFaBUyB5Nf8xPapKcTo92qK0G4ENDiytEWkfY8QiubtwgIQ== X-Google-Smtp-Source: ADFU+vuKPU+FuVihz2pY+jT8/1rsggGY9FOPe9nAPC0LvQ3B0XdJ/7NrjnP9NwRiQRRMRelBRG9gUnzV7Jpl+6kv2jY= X-Received: by 2002:a0d:e546:: with SMTP id o67mr3550313ywe.197.1583870660459; Tue, 10 Mar 2020 13:04:20 -0700 (PDT) MIME-Version: 1.0 From: Ross Goldberg Date: Tue, 10 Mar 2020 16:04:09 -0400 Message-ID: Subject: zsh parameter expansion replacement pattern parses string differently if its input is a variable instead of inlined To: zsh-users@zsh.org Content-Type: multipart/alternative; boundary="000000000000163fa605a085a02c" --000000000000163fa605a085a02c Content-Type: text/plain; charset="UTF-8" A zsh parameter expansion replacement pattern parses string differently if its input is a variable instead of inlined. I assume that it has something to do with character escaping, but am not sure how to work around it. In the code below, >, * & 2.5.8 should be filtered out of the printf output, which correctly occurs in the first parameter expansion using the variable named versions. But when the curl call is inlined, then the above 3 values are not filtered out. How can I inline the curl call yet still filter out the 3 values? #!/usr/bin/env zsh setopt EXTENDED_GLOB # variable: 3 values are correctly filtered out versions=$(curl '--silent' '--location' ' https://api.sdkman.io/2/candidates/groovy/darwin/versions/list?current=2.5.8&installed=2.5.8 ') printf -- '%s\n' ${${(Z+n+)versions//[*+>][ *+>]# [[:graph:]]##}} # inlined: 3 values are not filtered out printf -- '%s\n' ${${(Z+n+)$(curl '--silent' '--location' ' https://api.sdkman.io/2/candidates/groovy/darwin/versions/list?current=2.5.8&installed=2.5.8')//[*+>][ *+>]# [[:graph:]]##}} --000000000000163fa605a085a02c--