Javascript的正则表达式是否正确
我正在寻找用户输入3个字符,它们应该是字母,而不是数字和特殊字符Javascript的正则表达式是否正确,javascript,regex,Javascript,Regex,我正在寻找用户输入3个字符,它们应该是字母,而不是数字和特殊字符 if(txt1.match('[A-Za-z]{3}')){} 上述条件是否正确?将匹配任何包含3个或更多字符的字符串,若要严格限制为3个字母,请尝试 if(txt1.match('^[A-Za-z]{3}$')){} 这将匹配任何包含3个或更多字符的字符串,要严格限制为3个字母,请尝试 if(txt1.match('^[A-Za-z]{3}$')){} 非常接近 if(txt1.match(/[A-Za-z]{3}/))
if(txt1.match('[A-Za-z]{3}')){}
上述条件是否正确?将匹配任何包含3个或更多字符的字符串,若要严格限制为3个字母,请尝试
if(txt1.match('^[A-Za-z]{3}$')){}
这将匹配任何包含3个或更多字符的字符串,要严格限制为3个字母,请尝试
if(txt1.match('^[A-Za-z]{3}$')){}
非常接近
if(txt1.match(/[A-Za-z]{3}/)) {}
注意:如果用户输入3个字母而不是数字或特殊字符,则上述内容将匹配。如果用户输入以下内容,它也将匹配
234abc098
如果要确保总共只有3个字符,请确保在正则表达式中放置字符串开头和字符串结尾标记
^[A-Za-z]{3}$
非常接近
if(txt1.match(/[A-Za-z]{3}/)) {}
注意:如果用户输入3个字母而不是数字或特殊字符,则上述内容将匹配。如果用户输入以下内容,它也将匹配
234abc098
如果要确保总共只有3个字符,请确保在正则表达式中放置字符串开头和字符串结尾标记
^[A-Za-z]{3}$
我改变了两件事。首先,Javascript中的正则表达式以斜杠开始和结束。其次,我添加了一个开始和结束字符(^和$)。这确保字符串的stat后面跟3个字母,然后结束。意思是它必须正好是3个字母
我改变了两件事。首先,Javascript中的正则表达式以斜杠开始和结束。其次,我添加了一个开始和结束字符(^和$)。这确保字符串的stat后面跟3个字母,然后结束。这意味着它必须正好是3个字母。否。首先,语法是错误的,它应该使用正则表达式文字(实际上,字符串似乎在这里也起作用): 接下来,如果您想要3个字符,而不是更多字符,请确保包括开始和结束锚定:
txt1.match(/^[A-Za-z]{3}$/)
不。首先,语法是错误的,它应该使用regex文本(实际上,字符串在这里似乎也起作用): 接下来,如果您想要3个字符,而不是更多字符,请确保包括开始和结束锚定:
txt1.match(/^[A-Za-z]{3}$/)
您可以使用
i
regex标志使匹配不区分大小写,并简化regex。此外,如果没有^
和$
,任何包含三个连续字母的字符串都将匹配。您需要添加^
和$
以分别匹配字符串的开头和结尾。最后,如果不需要捕获匹配的文本,则应使用正则表达式对象的test()
方法获取简单的布尔值:
if ( /^[a-z]{3}$/i.test(txt1) ) {}
您可以使用
i
regex标志使匹配不区分大小写,并简化regex。此外,如果没有^
和$
,任何包含三个连续字母的字符串都将匹配。您需要添加^
和$
以分别匹配字符串的开头和结尾。最后,如果不需要捕获匹配的文本,则应使用正则表达式对象的test()
方法获取简单的布尔值:
if ( /^[a-z]{3}$/i.test(txt1) ) {}
不,您没有为正则表达式使用正确的分隔符,例如
/reg/
:
if(txt1.match(/[A-Za-z]{3}/)){}
尽管match()
将根据传递的任何字符串构造正则表达式,但在需要开始转义字符时,您可能会感到困惑
您还需要分别使用起始锚定和结束锚定,^
和$
,以确保正则表达式从字符串开始到字符串结束匹配:
if(txt1.match(/^[A-Za-z]{3}$/)){}
最后,如果您只需要true
或false
检查(在本例中,您需要这样做),请使用而不是match()
:
test()
是正则表达式实例上的一种方法,因此正则表达式位于函数调用之前。不,您没有为正则表达式使用正确的分隔符,例如/reg/
:
if(txt1.match(/[A-Za-z]{3}/)){}
尽管match()
将根据传递的任何字符串构造正则表达式,但在需要开始转义字符时,您可能会感到困惑
您还需要分别使用起始锚定和结束锚定,^
和$
,以确保正则表达式从字符串开始到字符串结束匹配:
if(txt1.match(/^[A-Za-z]{3}$/)){}
最后,如果您只需要true
或false
检查(在本例中,您需要这样做),请使用而不是match()
:
test()
是正则表达式实例上的一种方法,因此正则表达式位于函数调用之前。Javascript对正则表达式有一种特殊语法:/regex/
。下面显示了正则表达式的正确实现:
if(txt1.match(/[A-Za-z]{3}/)){}
在String对象(如“String”
)和RegExp对象(如/regex/
)上有几个RE(正则表达式)函数可用。如果只想根据regexp测试字符串而不保存结果,建议使用regexp.test
函数:
if(/^[A-Za-z]{3}$/.test(txt1)){}
注意:我添加了
^
和$
,因为它应该匹配所有字符,包含3个字符是不够的^
表示字符串的开头,$
表示字符串的结尾。Javascript对正则表达式有一种特殊的语法:/regex/
。下面显示了正则表达式的正确实现:
if(txt1.match(/[A-Za-z]{3}/)){}
在String对象(如“String”
)和RegExp对象(如/regex/
)上有几个RE(正则表达式)函数可用。如果只想根据regexp测试字符串而不保存结果,建议使用regexp.test
函数:
if(/^[A-Za-z]{3}$/.test(txt1)){}
注意:我添加了
^
和$
,因为它应该匹配所有字符,包含3个字符是不够的^
表示字符串的开头,$
表示字符串的结尾。首先,必须使用正斜杠而不是单引号来直接传递正则表达式以匹配()