/ 'literal string in target' /

> On 29 Oct 2022, at 23:28, ToddAndMargo via perl6-users <perl6-us...@perl.org> 
> wrote:
> 
> 
>>> On 29 Oct 2022, at 22:02, ToddAndMargo via perl6-users 
>>> <perl6-us...@perl.org> wrote:
>>> 
>>> Hi All,
>>> 
>>> I am trying to change
>>> 
>>>     /
>>> 
>>> into
>>> 
>>>     \\\
>>> 
>>> This works:
>>> 
>>> 
>>> $ echo "a/b/c/d" | raku -ne 'my $x=$_; $x~~s:g|$(Q[/])|\\\\\\|;print $x ~ 
>>> "\n"'
>>> a\\\b\\\c\\\d
>>> 
>>> 
>>> But this does not:
>>> 
>>> $ echo "a/b/c/d" | raku -ne 'my $x=$_; $x~~s:g|$(Q[/])|Q[\\\]|;print $x ~ 
>>> "\n"'
>>> aQ[\]bQ[\]cQ[\]d
>>> 
>>> 
>>> How do I put a literal string in the
>>> target of a regex?
>>> 
>>> Many thanks,
>>> -T
> 
> On 10/29/22 13:07, Elizabeth Mattijsen wrote:
> > $ echo "a/b/c/d" | raku -ne 'say .subst("/", Q/\\\/, :g)'
> >
> 
> Hi Elizabeth,
> 
> Thank you for the subst workaround!
> 
> Do you also know how to do a literal string in
> the target of the regex?
> 
> -T
> 

Reply via email to