求正则表达式

likeajin 2012-05-24 10:09:57
规则:字母abcd。
1.任意两个字母组合,中间以"-"分开,比如a-b b-a等。
2.不能出现a-a b-b c-c等。
3.任意给个字符串,判断是否符合上面的要求。
4.所有可出现的字母是预先定义好的,比如abcd可以换做xyz等,但它们是预先定好的。

PS:穷极一下,符合的一共有:a-b a-c a-d b-a b-c b-d c-a c-b c-d d-a d-b d-c

目前我要用两个才能搞定,求高手帮写个,写一个漂亮点的,别把穷极后的结果用"|"连起来,万一有26个字母呢。


var s='a-b';//'a-a'
alert(!/^([abcd])-\1$/.test(s) && /^[abcd]-[abcd]$/.test(s))
...全文
44 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
newxdlysk 2012-05-24
  • 打赏
  • 举报
回复
var s='a-b';//'a-a'
alert(/^([a-d])-(?!\1)[a-d]$/.test(s));

87,921

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧