正则表达式——(\w+[-]?\w+[-]?\w+)+\.([cn]?[oe]?[mnt]{1})(\.cn)?  什么意思?能解释一下吗?特别是?得用法是什么意思?

解决方案 »

  1.   


    (\w+[-]?\w+[-]?\w+)+\.([cn]?[oe]?[mnt]{1})(\.cn)?\w:字母、数字、下划线、汉字
    +:表示1到N个
    [-]?:表示-字符出现0到1次像[cn]这种形式:表示匹配c或n。[mnt]{1}:前面同上,{1}有示一次。。这个{1}在这里可以不加。。\.:表示小数点因为是元字符。。所以加斜杠转义(\.cn)?:表示: .cn这个出现0到1次
      

  2.   

    那看看下面那个不在范围呢? 
             sqd-hhh-.cot          sqd-hhh-.not   sqd-hhh-.nom  sqd-hhh-.non
             sqd-hhh-.cot.cn       sqd-hhh-.cet   sqd-hhh-.cem  sqd-hhh-.cen
             sqd-hhh-.cem.cn       sqd-hhh-.net   sqd-hhh-.nem  sqd-hhh-.nen         sqd-hhh-.nem.cn
             sqd-hhh-.nm
             sqd-hhh-.nt
             sqd-hhh-.nn
     是不是就是 
      数字字母-随便多少不限 . cn(选择其中0到1个) oe(选择其中0到1个)mnt(选择其中1个) .cn(选择其中0到1个)  是这样吗?