my $wiki = '_one*'; my $expected = $wiki; $html = $wiki =~ s{ (?:^|\s) \K ([*_/]+) | ([*_/]*) (?=$|\s) } { $1 ? $1 =~ s|.|<$h{$&}>|gr : $2 =~ s|.||gr }gexr; print $html eq $expected ? "passed" : "FAILED", "\n\n"; print $wiki, "\n\n", $expected, "\n\n", $html, "\n";