#!/usr/bin/perl6
# your code goes here
Str.^find_method("split").wrap(
sub split(|c) {
my @x = callwith(|c); # call Str::split with all arguments
my @r = [];
my ($i, $j) = (0, 0);
my regex letter-number { <[a..z0..9]> }
for @x -> $x {
if $x.lc ~~ /<letter-number>/ && $i > 0 && @r[$i-1].lc ~~ /<letter-number>/ {
@r[$i-1] ~= $x;
} else {
@r[$i++] = $x;
}
}
@r;
});
my $ms = "为了让大家在 V2EX 上的时间更有效率";
say $ms;
say $ms.split("").join("===");
IyEvdXNyL2Jpbi9wZXJsNgojIHlvdXIgY29kZSBnb2VzIGhlcmUKClN0ci5eZmluZF9tZXRob2QoInNwbGl0Iikud3JhcCgKCXN1YiBzcGxpdCh8YykgewoJCW15IEB4ID0gY2FsbHdpdGgofGMpOyAjIGNhbGwgU3RyOjpzcGxpdCB3aXRoIGFsbCBhcmd1bWVudHMKCQlteSBAciA9IFtdOwoJCW15ICgkaSwgJGopID0gKDAsIDApOwoJCW15IHJlZ2V4IGxldHRlci1udW1iZXIgeyA8W2EuLnowLi45XT4gfQoJCQoJCWZvciBAeCAtPiAkeCB7CgkJCWlmICR4LmxjIH5+IC88bGV0dGVyLW51bWJlcj4vICYmICRpID4gMCAmJiBAclskaS0xXS5sYyB+fiAvPGxldHRlci1udW1iZXI+LyB7CgkJCQlAclskaS0xXSB+PSAkeDsKCQkJfSBlbHNlIHsKCQkJCUByWyRpKytdID0gJHg7CgkJCX0KCQl9CgkJQHI7Cgl9KTsKCm15ICRtcyA9ICLkuLrkuoborqnlpKflrrblnKggVjJFWCDkuIrnmoTml7bpl7Tmm7TmnInmlYjnjociOwoKc2F5ICRtczsKCnNheSAkbXMuc3BsaXQoIiIpLmpvaW4oIj09PSIpOw==