Regex 以字母作为第一个字符,后面四位数字的正则表达式
我想要一个正则表达式来验证以字母开头的字符串,然后是数字,但是字符串长度应该限制为5个字符 我使用的正则表达式:Regex 以字母作为第一个字符,后面四位数字的正则表达式,regex,typescript,Regex,Typescript,我想要一个正则表达式来验证以字母开头的字符串,然后是数字,但是字符串长度应该限制为5个字符 我使用的正则表达式: Validators.pattern('(.*?)[0-9]{4}') 不幸的是,当数字大于5时,它没有给我验证消息(错误消息)。请检查我的正则表达式,并告诉我哪里做错了?A*?模式匹配任何0+字符(通过一个字符,我指的是所有可能的符号、字母、数字),尽可能少,直到后续子模式第一次出现 您需要的是在字符串开头匹配一个ASCII字母,然后确保后面只有4位数字。由于默认情况下,Vali
Validators.pattern('(.*?)[0-9]{4}')
不幸的是,当数字大于5时,它没有给我验证消息(错误消息)。请检查我的正则表达式,并告诉我哪里做错了?A
*?
模式匹配任何0+字符(通过一个字符,我指的是所有可能的符号、字母、数字),尽可能少,直到后续子模式第一次出现
您需要的是在字符串开头匹配一个ASCII字母,然后确保后面只有4位数字。由于默认情况下,Validators.pattern()
模式是锚定的,所以您只需要使用
Validators.pattern('[A-Za-z][0-9]{4}')
模式将被转换为/^[A-Za-z][0-9]{4}$/
请参阅。A
*?
模式匹配任何0+个字符(通过一个字符,我指的是所有可能的符号、字母、数字),尽可能少,直到后续子模式的第一次出现
您需要的是在字符串开头匹配一个ASCII字母,然后确保后面只有4位数字。由于默认情况下,Validators.pattern()
模式是锚定的,所以您只需要使用
Validators.pattern('[A-Za-z][0-9]{4}')
模式将被转换为/^[A-Za-z][0-9]{4}$/
请参阅。
*?
匹配任何0个或更多字符。也许您只需要验证器.pattern('.[0-9]{4}')
正如@WiktorStribiżew所说,
将匹配任何字符(包括数字),您将匹配其中的0个或更多字符。如果数字前只需要1个非数字字符,则不希望使用修饰符,而应使用不包含数字的字符类。例如:Validators.pattern(“[^0-9][0-9]{4}”)
因此,整个输入应该是5个字符长,第一个字符可以是任何字符(字母/数字/特殊字符)?Wiktor。应该输入第一个字符。它不能给出正确的答案。第一个字符必须是字符,其他字符必须是数字。在您的语言中,“字符”是什么?*?
匹配任何0个或更多字符。也许您只需要验证器.pattern('.[0-9]{4}')
正如@WiktorStribiżew所说,
将匹配任何字符(包括数字),您将匹配其中的0个或更多字符。如果数字前只需要1个非数字字符,则不希望使用修饰符,而应使用不包含数字的字符类。例如:Validators.pattern(“[^0-9][0-9]{4}”)
因此,整个输入应该是5个字符长,第一个字符可以是任何字符(字母/数字/特殊字符)?Wiktor。应该输入第一个字符。它不能给出正确的答案。第一个字符必须是char,其他字符必须是number。在你们的语言中,“char”是什么?