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

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

呼如林

/^(?!.+--)[a-z][a-z0-9-]*[^-]$/g效率稍微高一点的写法/^[a-z](?!.*--)[a-z0-9-]*[^-]$/g

HUWWW

varexp=/^[a-z](?:[a-z0-9]|-(?!-))*\b(?!-)$/;//下面连续测试就没有加g//matchconsole.log(exp.exec("a"))console.log(exp.exec("a12b"))console.log(exp.exec("a-1-2-3-b"))//notmatchconsole.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-"))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript