- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
sub translateToSearch {
        my($search)=@_;
        $search =~ s/\ /\*/g;
        my $s_up=to_upper($search);
        my $s_low=to_lower($search);
        my $s="";
        my $last_s="";
        for($i=0;$i<length($search);$i++) {
                my $ch=substr($search,$i,1);
                if(!($ch eq "*")) {
                        $s.="[".substr($s_up,$i,1).substr($s_low,$i,1)."]";
                } elsif( !($last_s eq "*")) {
                        $s.=".*";
                }
                $last_s=$ch;
        }
        return $s;
}
 Follow us!
 Follow us!
но кривовато как-то...
"^" => ?
и очень очень кривовато. вся функция делает вот это, если не ошибаюсь:
незнание сучествования оператора ne - или того же split //; оба продокуметированы - уже заставляет задуматся.