use strict;
my $str = '--valid
--th1s-is-also-val1d
--match-this-option-as-well
--9this-is-invalid-because-of-the-leading-digit
--this--is--invalid--because--of--word--wrapping--by--multiple--hyphens
--this-should-also-fail-because-of-the-trailing-hyphen-
';
my $regex = qr/(?<!\S)-{2}\b[a-z][a-z\d]{2,}\b(-{1}[a-z\d]+)*(?!\S)/mp;
my $subst = '';
my $result = $str =~ s/$regex/$subst/rg;
print "The result of the substitution is' $result\n";
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Perl, please visit: http://perldoc.perl.org/perlre.html