* (asterik) in regexp

If i have if ($item =~ /$exp/) { print 'yes'; My problem is that $item has a '*' in it at times. I'm getting weird behavior so i'm asking. Is this correct? $exp =~ s/\*/\\\*/g; if ($item =~ /$exp/) { print 'yes';