package MyClass; use Moose; use Moose::Util::TypeConstraints; has 'fname' => ( is => 'rw', isa => subtype('Str', where { /^[\w-]+$/ }), );