Imposing list context on the split function won’t help, because the smartmatch operator infers the required behaviour only when it finds the righthand side to contain an array, not a list. So you can do this:
17:49 >perl -we "use v5.14; $a = 3456; print 'Yes' if 3 ~~ @{[split(// +, $a)]};" Smartmatch is experimental at -e line 1. Yes 17:49 >
which creates an anonymous array reference from the output of the split and then immediately dereferences it back to an array.
Whether that is really an improvement over using an explicit array is another question...
Hope that helps,
| Athanasius <°(((>< contra mundum | Iustus alius egestas vitae, eros Piratica, |
In reply to Re: Using smartmatch with split function
by Athanasius
in thread Using smartmatch with split function
by gurpreetsingh13
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |