On 2020-07-16 15:17, Parrot Raiser wrote:
Perhaps with a grammar?
On 7/16/20, Tom Browder <tom.brow...@gmail.com> wrote:
An opportunity for Raku golfers to show off Raku on the Debian users list.
Best regards,
-Tom
---------- Forwarded message ---------
From: Albretch Mueller <lbrt...@gmail.com>
Date: Tue, Jul 14, 2020 at 07:52
Subject: delimiters with more than one character? ...
To: Debian Users ML <debian-u...@lists.debian.org>
I have a string delimited by two characters: "\|"
_S=" 34 + 45 \| abc \| 1 2 3 \| c\|123abc "
which then I need to turn into a array looking like:
_S_AR=(
" 34 + 45"
" abc"
" 1 2 3"
" c"
"123abc"
)
I can't make awk or tr work in the way I need and all examples I
have found use only one character.
Is it possible to do such things in bash?
lbrtchx
A single quoted string:
' 34 + 45 \| abc \| 1 2 3 \| c\|123abc '.split('\|').join(', ');
returns: 34 + 45 , abc , 1 2 3 , c, 123abc
A double quoted string interprets '\' so;
" 34 + 45 \| abc \| 1 2 3 \| c\|123abc ".split('|').join(', ')
returns: 34 + 45 , abc , 1 2 3 , c, 123abc
spaces are still left in. The join is used to show the strings in the
array a bit better.
Regards,
Marcel