我要识别如下的格式:1234567
123_887 & 7 
123&九叁8—$90以上三个都是符合条件的即去掉数字中间的空白和特殊字符(!@#¥×&等)后的长度大于5就算,同时也要识别大写(零一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾)的数字,最好是正则,程序就算了,谢谢

解决方案 »

  1.   

    参考一下
    ([零一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾a-zA-Z0-9]{1,}[\s&_—$]*){5,}注意其中[\s&_—$],这里我只例举了空格、&、—、$等特殊字符,你可以修改下把所有特殊字符都放进去。大概的意思,我先找到一个非特殊字符,后面跟上零个或多个特殊字符,这样组合起来就保证了至少有一个非特殊字符,重复5次以后再拼起来就保证了匹配到的至少有5个非特殊字符,(无论中间有多少特殊字符)。你举的3个例子都是可以匹配到的。
    思路大概是这样子,自己再对照修修改修改。
      

  2.   


    @"^((\d|[零一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾])[! @#%&*]){5,}$"
    试试看吧  有什么特殊字符自己加吧