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

萌新求教!求一个正则的连续两次符号的匹配

萌新求教!求一个正则的连续两次符号的匹配

慕田峪4524236 2019-09-12 21:02:08
问题描述文本以小写字母开头,只能由小写字母、数字、"-"组成,且不能连续出现两个"-"符号,不能以"-"结尾相关代码constregex=/^[a-z][a-z0-9-]*[^-]$/g现在差一个不能连续出现两个"-"符号条件,如果有性能更高的表达式也请写下,求解~!
查看完整描述

2 回答

?
慕莱坞森

TA贡献1810条经验 获得超4个赞

/^(?!.+--)[a-z][a-z0-9-]*[^-]$/g
效率稍微高一点的写法/^[a-z](?!.*--)[a-z0-9-]*[^-]$/g
                            
查看完整回答
反对 回复 2019-09-12
?
白衣非少年

TA贡献1155条经验 获得超0个赞

varexp=/^[a-z](?:[a-z0-9]|-(?!-))*\b(?!-)$/;//下面连续测试就没有加g
//match
console.log(exp.exec("a"))
console.log(exp.exec("a12b"))
console.log(exp.exec("a-1-2-3-b"))
//notmatch
console.log(exp.exec("123"))
console.log(exp.exec("123abc"))
console.log(exp.exec("a-"))
console.log(exp.exec("a--1"))
console.log(exp.exec("a-1--2"))
console.log(exp.exec("a-1-2-"))
                            
查看完整回答
反对 回复 2019-09-12
  • 2 回答
  • 0 关注
  • 268 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号