这个正则表达式是什么意思?^(?=[1-9])(?=.[A-Z]).{10,12}$?

这个正则表达式是什么意思?^(?=[1-9])(?=.[A-Z]).{10,12}$


鸿蒙传说
浏览 590回答 1
1回答

慕慕森

/^[-.-_A-Za-z0-9]+@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/分成2部分,@之前和之后@之前^[-.-_A-Za-z0-9]+ 表示允许出现- . _ 和字母数字这些,且必须大于1个字符,字数无上限,而且他们出现的位置都不限@之后([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$([_A-Za-z0-9]+\.)+ 表示允许大于1个字母数字出现,后面跟 .[A-Za-z0-9]{2,3} 表示允许2个或3个字母数字的组成的单词出现下面的验证,根据你的修改了一些/^[^\_][\w\-\.]+@[\w\.]+[\w]{2,3}$/@之前^[^\_][\w\-\.]+ 排除下划线出现在用户名头位置,\w表示所有字母和数字,下划线后面都差不多意思------------------------------------不好意思,没注意到你的补充,现在才看到1.我的代码里最前面的/^是表示正则表达式的开始的吧?a: 是的,^是开始符号 $是结束符号2.按我的代码,第二个横线是不是可以去掉,而且原意不变?(我试过,去掉第一个不可以,去掉第二个代码能正常运行),如果不可以去掉那么要它有什么用?我试过用/^[-.-_-----A-Za-z0-9]+@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/这个代码也能用,也就是说从我那里的第三个横线开始加多少个都可以。3.df.-.g_d._fg@aa.aa.aa.bbbbbbbbb这个字符串可以在你的表达式里通过,这个违背了,我之前的意思:及最后一个单词后面只能是两个或三个字母。a:俩个短横线保留一个就可以了,不能去掉第一个的原因是第二个短横线-应该被当成连接符了,就想A-Z这样的中间的链接符,你去掉第一个的话,在第二个短横线那里加个反斜杠\就好了你提出的错误确实是存在,应该是[\w.]+这里出问题了,这[]里面的是可选的,而不是必须的,所以在匹配bbbbbbbbb的时候在[\w.]+这里成功,最后的[\w]{2,3}没起到作用,造成了这个错误,我改了一下,这样在没有到字串末尾时连接点.就成为必须字符/^[^\_][\w\-\.]+@([\w]+\.)+[\w]{2,3}[^\_]$/
打开App,查看更多内容
随时随地看视频慕课网APP