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

萌新!求一个正则的连续两次符号的匹配感激不尽

萌新!求一个正则的连续两次符号的匹配感激不尽

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

2 回答

?
呼如林

TA贡献1798条经验 获得超3个赞

/^(?!.+--)[a-z][a-z0-9-]*[^-]$/g
效率稍微高一点的写法/^[a-z](?!.*--)[a-z0-9-]*[^-]$/g
                            
查看完整回答
反对 回复 2019-10-17
?
HUWWW

TA贡献1874条经验 获得超12个赞

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-10-17
  • 2 回答
  • 0 关注
  • 321 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

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

帮助反馈 APP下载

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

公众号

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