将此代码片段从Perl转换为JavaScript



我知道许多编程语言,但我不知道是perl。如何在JavaScript中实现以下Perl片段?

my $minGroups = 3;
my %rexGroups = (
        upper => qr/[A-Z]/,
        lower => qr/[a-z]/,
        digit => qr/[0-9]/,
        other => qr/^[A-Za-z0-9]/,
);
my $nGroups = 0;
for my $re (keys %rexGroups) {
        ++$nGroups if ( $pass =~ m/$rexGroups{$re}/ );
}
if ( $nGroups < $minGroups ) {
        # indicate error
}
# indicate success

基本上,您发布的代码试图将给定的字符串与different regexes匹配,如果它匹配3或更多的 reg variable,我们应该给我们success,因为输出否则应给予使用。结果failure

let regs = [/[A-Z]+/g,/[a-z]+/g,/d+/g,/[^A-Za-z0-9]+/g]
let mincount = 3;
let findSuccess = (regs,str) => {
  let count = 0;
  regs.forEach(e => count+= e.test(str) ? 1 : 0)
  count >= mincount ? console.log('successful')
                    : console.log('unsuccessful')
}
findSuccess(regs,'hello 123 @ Hello')
findSuccess(regs,'Hello')

最新更新