当前位置: 首页 > 知识库问答 >
问题:

Regex匹配一行中的X个数字或字母,但不匹配X个字母

吕高昂
2023-03-14

所以我应该得到A7A3G1A,但不是天线。两者都匹配的regex是:[A-Z0-9]{7}。是否可以不允许只使用大写字母而仍然提取第一个匹配?

共有1个答案

柳胡媚
2023-03-14

您可以使用此regex,

\b(?![A-Z]{7})[A-Z0-9]{7}\b

演示

这里,单词边界\b确保只匹配整个单词,而(?![A-Z]{7})否定向前看确保匹配的不是所有的大写字母,[A-Z0-9]{7}捕获一个包含七个字符的单词,其中包含大写字母和数字的混合。

 类似资料:
  • 我试图验证一个字符串,它应该只包含字母、数字和特殊字符。为此,我尝试使用正则表达式。 在使用上述代码时,字符串是有效的。但我的要求是出示这个无效。ie每当出现字母、数字或特殊字符以外的字符时,字符串的计算结果应为无效。如何使用regex实现这一点?

  • 要匹配至少包含一个字母或数字的字符串,JavaScript正则表达式是什么?这至少需要一个字母数字字符(至少一个字母或至少一个数字)。

  • 问题内容: 我有一个要从中提取3组的字符串: 月名称可能包含非ASCII字符,因此对我不起作用: 我可以使用,但它匹配数字和下划线: 我尝试使用[:alpha:],但是不起作用: 如果我能以某种方式匹配而没有,但我不知道如何。即使我知道如何做到这一点,是否也有像Python中那样可用的现成快捷方式? 问题答案: 您可以构造一个新的角色类: 代替。翻译成英文,意思是“任何不是非字母数字字符(与相同)

  • 问题内容: 我有以下仅允许字母的正则表达式: 如何使用p {L}(通用-任何语言,例如德语,英语等)来执行此操作 我试过了 但所有字母a =“ aB”均返回null 问题答案: 从ECMAScript2018开始,JavaScript终于原生支持Unicode属性转义。 对于较旧的版本,您要么需要自己定义所有相关的Unicode范围。或者,您可以将StevenLevithan的程序包与Unicod

  • 这是打算在Java中使用的。想象以下示例输入: 我想匹配至少一个数字后面的所有字母字符。 所需输出: