gpt4 book ai didi

java - 验证单词中给定字母的数量(重复和顺序并不重要)

转载 作者:太空宇宙 更新时间:2023-11-04 06:13:08 25 4
gpt4 key购买 nike

我需要验证一个单词是否满足最低字母要求,但我陷入了重复的困境。

例如:我需要我的单词包含以下字母 AAAABBC(至少 4 次 A、至少 2 次 B 和至少 1 次 D)。

这应该匹配:

  • ABRACADABRA;
  • BRACADABRAA;
  • BRAACADABRAA;
  • DBRAACADABRAA;

等等。

我设法构建了这个正则表达式:A.*(?=(A.*){4}),但我不知道如何强制执行其余字母和最小出现次数。我想到了这样的事情: (A.*(?=(A.*){4,})|B.*(?=(B.*){2,})) 但这只能保证该单词至少有 4 个 A 或至少 2 个 B。再说一遍,不能保证单词中的字母,我只需要确保我要求的字母存在,并且它们至少出现我要求的次数。

那么,有什么提示吗?

最佳答案

您可以使用正则表达式:

^(?=(?:[^A]*A){4})(?=(?:[^B]*B){2})(?=[^D]*D).+$

RegEx Demo

关于java - 验证单词中给定字母的数量(重复和顺序并不重要),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28459280/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com