or download this
($x,$s,$m) = split(/\//,$RegEx);
sub p {print "Match: ",$&||"none"," Pre: ",$`||"none"," Post: ",$'||"n
+one","\n"}
...
if ($m eq 'smix') {$String =~ /$s/smix;p}
if ($m eq 'smio') {$String =~ /$s/smio;p}
if ($m eq 'xsmio') {$String =~ /$s/xsmio;p}