当前位置: 首页 > 面试题库 >

使用正则表达式检查字符串是否至少有两个数字

强金鑫
2023-03-14
问题内容

深入研究堆栈溢出后,我发现了一些代码来检查字符串是否为字母数字且长于8个字符。效果很好。现在,如果包含至少2个数字,如何使它返回true?我想我必须在\d{2}某处添加。

String pattern = "^[a-zA-Z0-9]*$";

if (s.matches(pattern) && s.length() >= 8){
    return true;
}
return false;

问题答案:

您不需要单独的if条件。单个正则表达式将为您完成所有工作。

String pattern = "^(?=.*?\\d.*\\d)[a-zA-Z0-9]{8,}$";


 类似资料:
  • 我在SO和web上都发现了很多关于这个主题的变化,但大多数(如果不是全部的话)要求至少一个字母和一个数字。我至少需要一封信。我已经试过了,但还没有成功,我需要的是字符串只包含字母、字母和数字(任意顺序),允许使用破折号和空格,但不能在字符串的开头或结尾。下面是它现在的样子: 如何添加检查是否至少有一个字符? 不管它是在开头还是结尾,或者它和数字之间是否有空格或破折号。只要至少有一个字符。

  • 问题内容: 我正在寻找Java代码来检查字符串是否为有效的XML。 问题答案: 用正则表达式验证XML是不可能的。XML不是常规语言。 使用XML解析器尝试将字符串解析为XML,或者对照模式(例如DTD或XSD文件)验证XML文档。

  • 问题内容: 我对和都错了。我想检查哈希是否仅包含数字。我错过了什么? 问题答案: 应该这样做。原始匹配的任何内容都只包含一位数字。

  • 问题内容: 我有一个字符串。如何检查字符串是正则表达式还是包含正则表达式还是正常字符串? 问题答案: 您唯一可以做的可靠检查是,如果语法正确的是正则表达式: 但是请注意,即使对于像和这样的字符串,也会导致这种情况,因为从技术上讲,它们是有效的正则表达式。 唯一会返回的情况是不是有效正则表达式的字符串,例如或或。

  • 我的条件... 字母数字值 只允许使用一个空格或连字符 必须包含至少一个数字 不能以空格或连字符开头或结尾 最少2个字符,最多16个字符,不包括空格/连字符 到现在为止,我准备了正则表达式 它只遗漏了第三点。 测试字符串有效 无效

  • 我正在使用javascript正则表达式,其中包括以下条件。到目前为止没有运气。 -允许的最小字符数为8。 -允许的最大字符数为64。 -输入的文本应至少包括以下两个-数字、小写字母、大写字母、特殊字符。 -不支持输入符号。 到目前为止,我所拥有的是这个@anubhava答案。