正则表达式:如何过滤这个数字组合pasw?

时间:2015-08-07 15:04:16

标签: regex

例如:

  

john@yahoo.com:abcd123

     

john@yahoo.com:1234

     

john@yahoo.com:ABCD

     

john@yahoo.com:123abcd

我想在结尾处排除包含NUMBER的整行,并且只保留这两行:

  

john@yahoo.com:ABCD

     

john@yahoo.com:123abcd

我有一个我试过但正常工作的正则表达式代码,我使用这个工具 - >单词列表更新程序2.7

([a-zA-Z0-9._%+-]+@(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}:(?=.*[a-z]{8,})(?=.^\d))

3 个答案:

答案 0 :(得分:1)

编辑:在我试用正则表达式时,我没有看到@Sobrique已经评论了正确答案。

您可以使用\d$

它确实匹配紧随其后的所有数字。因此,如果您的字符串符合此规则,则可以将其删除。

答案 1 :(得分:0)

/^[a-z0-9._%+-]+@(?:[a-z0-9-]+\.)+[a-z]{2,6}:[a-z\d]*[a-z]$/mig

工作demo

答案 2 :(得分:0)

如果要将字符串与正确长度和内容的密码匹配,请尝试:

[a-zA-Z0-9._%+-]+@(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}:(?=[\da-z]*?[a-z]$)

DEMO

如果您还想匹配密码,请使用:

[a-zA-Z0-9._%+-]+@(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}:(?=[\da-z]*?[a-z]$)(.+)

如果密码长度合适,请使用:

[a-zA-Z0-9._%+-]+@(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}:(?=(?:[\da-z]*?[a-z]){4,}$)

或者如果您想匹配此约束密码,请使用:

[a-zA-Z0-9._%+-]+@(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}:(?=[\da-z]*?[a-z]$)(.{4,})

DEMO

其中.{4,}表示必须至少包含4个字符。