javascript正则表达式模式验证

时间:2014-03-24 06:39:22

标签: javascript regex

我需要创建一个正则表达式模式,该模式以i开头,后跟6个数字。例如:i123456,i098765。

我已关注此SO,并创建了此正则表达式:^\[i]{1}[0-9]{6}$,但在this验证网站中,我对上述示例进行了错误处理。

我如何实现这一目标?

2 个答案:

答案 0 :(得分:3)

注意事项:

  1. 开头和结尾的插入符号(^)和美元符号($)分别表示行或字符串的开头和结尾,具体取决于多行(m)标志。如果您在字符串中查找匹配项,则此正则表达式将失败,因为它要求i123456模式为整个字符串(或行)。

  2. 您不需要创建一个字符集,如方括号中包含的字符所示,以匹配单个字符。只要写得很简单。

  3. 文字RegExp以正斜杠开头和结尾。除非您包含这些表达,否则某些在线工具和验证程序可能无法将您的表达识别为有效。

  4. 正如@kamilkp回答的那样,如果您尝试根据模式验证整个输入字符串,/^i\d{6}$/将是最短的表达式。如果您尝试从较大的字符串中提取与模式匹配的子字符串,则如果前导字母“i”的大小写无关紧要,则最简单的模式为/i\d{6}//i\d{6}/i

答案 1 :(得分:1)

最短的正则表达式是:/^i\d{6}$/