如何使用正则表达式匹配或替换仅包含数值的密码
Posted
技术标签:
【中文标题】如何使用正则表达式匹配或替换仅包含数值的密码【英文标题】:How can I use a regular expression to match or replace passwords containing only numeric values 【发布时间】:2021-02-07 16:20:22 【问题描述】:我正在尝试找到一个正则表达式模式,它允许我匹配一个简单但特定的模式。 密码要求是字符串不能仅由数字字符组成。它可以包含任意数量的字母数字、特殊字符等。
这是原始输出
["line":"test@test.com:12345","line":"test@test.com:abcxyz","line":"test@test.com:abc123","line":"test@test.com:73chesterfield"]
我想要达到的目标
test@test.com:abcxyz
test@test.com:abc123
我对正则表达式的了解非常有限,但本周大部分时间我都在尝试寻找解决方案,但没有成功。
我能做的最接近的事情是清理输出,所以它只是
12345
,abcxyz
,abc123
然后使用"^[a-zA-Z]*$"
之类的表达式并以某种方式获取符合我的条件的字符串,并将它们连接回电子邮件。
我遇到的最大问题是我知道这是可能的,但我不确定所涉及的确切方法是什么,以及我应该关注正则表达式的哪个领域。任何对解决方案的建议,甚至为我指明继续研究的方向都将不胜感激。
【问题讨论】:
【参考方案1】:目前还不是 100% 清楚您的目标是什么……但是,这里有一些示例:
/(\w+@[\w\.]+:\w+)/ // Will match passwords made up of "word characters" [a-Z0-9_]
/(\w+@[\w\.]+:.*?)(?<!\\)"/ // This will match passwords with any character (even escaped ")
【讨论】:
如果我在解释方面做得不好,我深表歉意,但您提供的第一个示例正是我一直在寻找的。非常感谢!以上是关于如何使用正则表达式匹配或替换仅包含数值的密码的主要内容,如果未能解决你的问题,请参考以下文章