- my $u = decode('utf-8', $e);
- my $fill = decode('utf-8', "\\s?");
- my @u = split(//, $u);
- my @ud = ();
- for my $c (@u) {
- push(@ud, $c, $fill);
+ if ($e =~ /(\^|\\|\||\[|\]|\(|\)|\*|\+|\?)/) {
+ # already regex, don't manipulate
+ $e = qr/$e/i;
+ }
+ else {
+ my $u = decode('utf-8', $e);
+ my $fill = decode('utf-8', "\\s?");
+ my @u = split(//, $u);
+ my $ud = join($fill, @u);
+ my $e1 = encode('utf-8', $ud);
+ $e = qr/$e1/i;