Java 允许长度至少为8但不允许长度为16的字符串的正则表达式模式

Java 允许长度至少为8但不允许长度为16的字符串的正则表达式模式,java,regex,regex-negation,Java,Regex,Regex Negation,我的要求是创建一个正则表达式模式,该模式允许长度至少为8的字符串,对于最大值,它允许除16以外的任何长度 我尝试使用此^.{8,}$来满足至少8个字符的要求,但我不知道如何更新它,以便它可以允许任何长度的最小值为8,而不是16。这样做: ^(?!.{16}$).{8,}$ 说明: ^ : beginning of string (?! : negative lookahead, zero-length assertion that make

我的要求是创建一个正则表达式模式,该模式允许长度至少为8的字符串,对于最大值,它允许除16以外的任何长度

我尝试使用此
^.{8,}$
来满足至少8个字符的要求,但我不知道如何更新它,以便它可以允许任何长度的最小值为8,而不是16。

这样做:

^(?!.{16}$).{8,}$
说明:

^               : beginning of string
    (?!         : negative lookahead, zero-length assertion that make sure we don't have 
        .{16}   : 16 characters
        $       : end of string
    )           : end lookahead
    .{8,}       : any character, at least 8
$               : end of string

你试过什么?什么不起作用?^.{8,}$我尝试了至少8个字符的要求,但我不知道如何更新它,以便它可以允许任何长度最小8,但不允许16。它可以超过16,16是unallowed@SaakshiAggarwal感谢您提供的补充信息和澄清。总是要编辑问题并在那里添加这样的内容,这样我们就可以把所有内容都放在一个地方。