2016-12-06 143 views
-3

作为标题说我想检查一个字符串是否包含至少6个字符,一个大写字母和一个数字,是否需要使用regex或有一个更简单的方法来实现?字符串的如何检查字符串是否至少有6个字符,一个大写字母和一个数字? - Javascript

例子:Hello7

我需要帮助创建正则表达式来做到这一点,你能不能给我一些帮助吗?至少怎么说我需要最少数量的特定字符,谢谢。

+2

你做了什么来尝试自己解决这个问题?你对正则表达式有多熟悉?你研究过如何编写正则表达式吗? –

+0

这不太适合正则表达式,特别是如果您的必需字符可以出现在测试字符串中的任意位置。 –

+0

在正则表达式测试中玩一下。这只是一个例子,但还有很多其他的例子,你可以找一个最适合你的人。 https://regex101.com/ – maniak1982

回答

1
(?=.*[A-Z])(?=.*\d)(?=.{6}).* 

online demo

**这是一排只有三个(?=.*pattern) “向前看符号”。注意每个lookahead内的.*以使模式扫描整个字符串。最后的.*就是在那里消耗字符串的其余部分,以防三个预览成功,并且它的存在是纯粹的可选的,因为在任何情况下,“isMatch”或等效应该是true

+2

如果您现在可以解释它,那么这对未来的其他人有用,而不是一个黑匣子可能会引发问题,希望它可以正常工作?当然是先生; –

+0

;) – sweaver2112

1

你可以写一个正则表达式,但它会很复杂。相反,你可以:

var title = 'Hello7'; 
title.match(/\d/) && title.match(/[A-Z]/) && title.length >= 6 // => true 
+0

然后我的密码应该是:'H7'(4个空格,然后是'H7') –

+0

@SeanBright我只能看到字符长度的要求,而不是字母数量(至少有一个大写除外)。这也不是密码,而是一个标题。 – ndn

+1

我知道,我只是在拖钓。这也是我将如何实施的。 –

相关问题