【问题标题】:Username Password Regular Expression用户名密码正则表达式
【发布时间】:2015-06-11 00:21:03
【问题描述】:

我正在尝试创建一个正则表达式来匹配文件上的用户名密码对,这些文件至少有 1 个大写字母、1 个小写字母、1 个数字和 1 个符号。我正在使用以下正则表达式:

\b(([a-zA-Z0-9]){5,20}((\\\\=)|( ?([=:]|(->)) ?)|( =\\))((?=.[a-z#{@specialDown}])(?=.*[A-Z#{@specialUp}])(?=.+[0-9])(?=.+[\!\@\#\$\%\^\&\*\(\)\_\+\|\~\-\=\\`\{\}\[\]\:\;\'\<\>\?\,\.\/])).{8,20})\b

specialDown 和 specialUp 变量分别是小写和大写的特殊字母。

这里的问题是我得到带有空格的密码,这是我不想要的。

谁能帮忙?

【问题讨论】:

  • 您是否真的将用户名及其明文密码存储在文本文件中?
  • ^(?=.*[A-Z])(?=.*[a-z])(?=.*\d)(?=.*\W).{8,20}$
  • 不,显然不是,这是为了一个项目。我必须找到不应该的明文密码。

标签: ruby regex passwords


【解决方案1】:

您可以将正则表达式中的所有 . 替换为 [^\s]\S 以排除匹配的空格。此外,您有几个 ? 模式,它们也允许空格。请检查是否有必要。

因此,固定模式将如下所示:

\b(([a-zA-Z0-9]){5,20}((\\\\=)|( ?([=:]|(->)) ?)|( =\\))((?=[^\s][a-z#{@specialDown}])(?=[^\s]*[A-Z#{@specialUp}])(?=[^\s]+[0-9])(?=[^\s]+[\!\@\#\$\%\^\&\*\(\)\_\+\|\~\-\=\\`\{\}\[\]\:\;\'\<\>\?\,\[^\s]\/]))[^\s]{8,20})\b

【讨论】:

  • 是的,替换 .由 [^\s] 得出。非常感谢
  • 实际上是这样的:\b(([a-zA-Z0-9]){5,20}\b((\\\\=)|( ?([=:]|(-&gt;)) ?)|( =\\))(\b(?=[^\s][a-z#{@specialDown}])(?=[^\s]+[A-Z#{@specialUp}])(?=[^\s]+[0-9])(?=[^\s]+[\!\@\#\$\%\^\&amp;\*\(\)\_\+\|\~\-\=\\`\{\}\[\]\:\;\'\&lt;\&gt;\?\,\.\/])\b)[^\s]{8,20}) 你已经替换了\。由 [^\s]
  • 我还有一个问题。换了个表情后,我还有点没解决的。现在的方式是: \b([a-zA-Z0-9]){5,20}((\\\\=)|( ?([=:]|(-&gt;)) ?)|( =\\))(?=[\S]+[a-z])(?=[\S]+[A-Z])(?=[\S]+[0-9])(?=[\S]+[\!\@\#\$\%\^\&amp;\*\(\)\_\+\|\~\-\=\\`\{\}\[\]\:\;\'\&lt;\&gt;\?\,\.\/])[\S]{8,20} 问题是即使前面有字符,它也匹配字符串,如下所示: username = Password1()!"#$=)/)(HGGHCU=UA=SU"=)ERU#TUJ)=WJE(U"WYHRF("W 其中匹配是: username = Password1()!"#$=)/)(如何避免匹配?
  • 请检查一下好吗?我找不到匹配项:rubular.com/r/KCklr6g9jt。我删除了无效多字节字符和&lt;\code&gt; 中的` instead of /` 的问题。
  • 哦,抱歉,请删除 。我试图制作一个带有评论的框,就像它已启动一样,但我是堆栈溢出的新手,我不知道如何在 cmets 中制作它。正则表达式是: \b([a-zA-Z0-9]){5,20}((\\\\=)|( ?([=:]|(-&gt;)) ?)|( =\ ))(?=[\S]+[az])(?=[\S]+[AZ])(?=[\S]+[0-9])(?=[\S]+[\ !\@\#\$\%\^\&amp;*()_\+\‌​|\~\-\=\`\{\}[]\:\;\'\\?\ ,\.\/])[\S]{8,20}
猜你喜欢
  • 1970-01-01
  • 2015-08-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-15
  • 1970-01-01
  • 1970-01-01
  • 2011-09-10
相关资源
最近更新 更多