以下情况的有效正则表达式是什么

What is the valid regex for followign case

本文关键字:正则表达式 是什么 有效 情况      更新时间:2023-09-26

>我需要使用以下条件有效字符串

  • 必须小于 20
  • 不应包含任何此字符'" [ ] : ; |= + * ?<>/'' ,
  • 不允许尾随 ,但可以介于两者之间
  • 不允许尾随空格

实际上,我想验证活动目录的samAccountName。

我发现了这一点,但在与javascript一起使用时无效。

这应该有效:

var re = /^[^"'[']:;'|='+'*'?<>'/''. ][^"'[']:;'|='+'*'?<>'/'''n'r't]{0,17}[^"'[']:;'|='+'*'?<>'/'' 'n'r't]$/;
var sourcestring = "source string to match with pattern";
var results = [];
var i = 0;
for (var matches = re.exec(sourcestring); matches != null; matches = re.exec(sourcestring)){
  results[i] = matches;
  for (var j=0; j<matches.length; j++) {
    alert("results["+i+"]["+j+"] = " + results[i][j]);
  }
  i++;
}

起初,它只匹配一个不在禁止组中且不是"或"."的字符。然后它匹配不在禁止组中的 0-17 个字符。最后,它只匹配一个不在禁止组中且不是"或"."的字符。

因此,它匹配 1-19 个字符的字符串,该字符串适合允许的字符组,并且没有跟踪空格或点。