java判定字符串中仅有数字和- 正则表达式匹配

1.当有其他字符出现时,返回的数组长度>1       

        String s = "3---6\\5656";
        Pattern pattern = Pattern.compile("[^0-9-]+");
        String[] ss = pattern.split(s);
        System.out.println(ss.length);
        System.out.println(ss[1]);

%%N07(17$IC_L}SK59E@NDI

2.无其他字符出现时,数组长度为 1。

image

综上所述,我们可以根据返回的数组的长度进行判定。

 

 

其中,此次正则   [^0-9-]+   中 []代表子表达式 ,[^]代表除去的意思,[^0-9-]意思为除去数字和-  ,+代表[^0-9-]重复出现1次或多次。

posted @ 2016-08-19 09:59  _万古如长夜  阅读(5359)  评论(0编辑  收藏  举报