You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写正则表达式匹配恰好2个字母且至少含一个小写字母?

解决方案

可以用以下正则表达式满足需求:

^(?=.*[a-z])(?:[^A-Za-z]*[A-Za-z]){2}[^A-Za-z]*$

正则拆解:

  • ^ 和 $:锚定字符串的开头与结尾,确保整个字符串都被检查,避免部分匹配。
  • (?=.*[a-z]):正向预查,确保字符串中至少包含一个小写字母,这部分你已经用到了,作用不变。
  • (?:[^A-Za-z]*[A-Za-z]){2}:非捕获组,匹配「任意数量非字母字符 + 一个字母」的组合,重复2次,严格限制字符串中恰好有2个字母。
  • [^A-Za-z]*:匹配字符串末尾可能存在的任意非字母字符,保证非字母字符不影响字母数量的统计。

测试示例:

  • 符合要求的匹配:"aB"、"12a3B"、"aa"、"bX!"
  • 不符合要求的不匹配:"AB"(无小写字母)、"abc"(3个字母)、"a"(仅1个字母)、"123"(无字母)

内容的提问来源于stack exchange,提问作者Dagwood

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 04:37:02