为了账号安全,请及时绑定邮箱和手机立即绑定

请教一个js正则问题

请教一个js正则问题

慕雪6442864 2019-04-07 11:19:14
^((?!xfb).)*$匹配不以xfb开始^(?![^a-zA-Z]+$)(?!\D+$).{6,}$匹配数字和字母组合的|分枝。匹配分枝条件时,将会从左到右地测试每个条件,如果满足了某个分枝的话,就不会去再管其它的条件了。要是把^(?![^a-zA-Z]+$)(?!\D+$).{6,}$|^((?!xfb).)*$匹配规则就失效了?我想得到的是不以xfb开始的数字与字母的组合。
查看完整描述

2 回答

?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

^((?!xfb)[a-zA-Z0-9]+)$
这样是不是就可以?匹配不以xfb开头的任意字母与数字组合...
必须包含数字和字母的...现学的,写的不好...
/^((?!xfb)(([a-zA-Z]+)(?=\d)(\d+)([a-zA-Z0-9]{0,}))|(([0-9]+)(?=[a-zA-Z])([a-zA-Z]+)([a-zA-Z0-9]{0,})))$/g
//忽略大小写版本
/^((?!xfb)(([a-z]+)(?=\d)(\d+)([a-z0-9]{0,}))|(([0-9]+)(?=[a-z])([a-z]+)([a-z0-9]{0,})))$/gi
(?!xfb)
不匹配以xfb开头的字符串
([a-zA-Z]+)(?=\d)(\d+)([a-zA-Z0-9]{0,}))
以字母开头但是字符串间要包括数字
(([0-9]+)(?=[a-zA-Z])([a-zA-Z]+)([a-zA-Z0-9]{0,}))
以数字开头但是字符串间要包括字母
                            
查看完整回答
反对 回复 2019-04-07
?
繁星淼淼

TA贡献1775条经验 获得超11个赞

|是或,不是与
所以^([a-z0-9])+$|^((?!xfb).)*$代表不以xfb开始的或者数字与小写字母的组合
只有既以xfb开头,又包含非数字与小写字母,如xfbAabc123才是无法match的
但是xfbabc123或者Aabc123都是可以match的
                            
查看完整回答
反对 回复 2019-04-07
  • 2 回答
  • 0 关注
  • 388 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信