完全匹配,规则:20位字母或数字或_或-,首位以及末尾不能为-,中间出现-的次数不能大于1次的正则。^(?=.{20}$)(\w){1}((\w){18}|\-\w+|\w+\-|\w+\-\w+)(\w){1}$不限定20位的,完全匹配:规则:从一位开始到任意位字母或数字或_或-,首位以及末尾不能为-,大于三位时中间出现-的次数不能大于1次的正则。(^\w{1}(.?|\-\w+|\w+(?:.|\-|\-\w+))\w{1}$)|(^(?=.{1}$)(\w))这个问题稍稍有点难度,++++分,到regexpal.com验证,匹配条件 # Case insensitive (i)# ^$ match at