7

我正在尝试为正好 8 个字符长的字符串找到一个中规中矩的正则表达式。这 8 个字符应由 a 和 b 组成。

另一种说法是 a{n}b{8-n} 其中 n=0...8

匹配字符串示例:aaaaaaa abbbbbbb aaaabbbb bbbbbbbb

示例不匹配字符串:bbbbaaaa aaaabaaa

4

2 回答 2

5

您可以使用正向前瞻来限制长度,否则,它相当简单。

/^(?=[ab]{8}$)a{0,8}b{0,8}$/
于 2013-01-30T20:41:53.800 回答
3

有很多方法可以做到这一点。这是另一种选择:

/^(?=a*b*$).{8}$/

当然,您可以切换前瞻中的内容:

/^(?=.{8}$)a*b*$/
于 2013-01-30T20:48:01.337 回答