我需要一个接受至少1位数和最大5位数的正则表达式,如果用户按照以下方式输入0,如’00’,’000′,’0000′,’00000’那么表达式应该拒绝这样的输入. 目前,我正在使用^ [0-9] {1,5} $. ^(?=.*
目前,我正在使用^ [0-9] {1,5} $.
^(?=.*[1-9].*)[0-9]{1,5}$
使用前瞻断言来确保至少有一个非零数字.如果有一个,那么表达式的其余部分只有在1到5位数之间才匹配.必须满足这两个条件,否则表达式将不匹配.
但同意,如果你试图匹配一个数字,而不是一串数字(比如邮政编码),那么用数字而不是正则表达式进行比较可能会更好.