日期:2014-05-20  浏览次数:20664 次

大神们。。求帮助
怎么判断一个string
为数字
包括中文的
一千八百四十二或者壹仟贰佰或者15687
这样子
 
正则可以吗。谁可以帮忙写个。。有点迷糊。

------解决方案--------------------
Java code
        Pattern pattern=Pattern.compile("[零一二三四五六七八九十百千万亿]+|[零壹贰叁肆伍陆柒捌玖拾佰仟万亿]+|[\\d]+");

        Matcher matcher=pattern.matcher("一千八百四十二");
        System.out.println(matcher.matches());

        matcher=pattern.matcher("壹仟贰佰");
        System.out.println(matcher.matches());

        matcher=pattern.matcher("15687");
        System.out.println(matcher.matches());

        matcher=pattern.matcher("一23");
        System.out.println(matcher.matches());

        matcher=pattern.matcher("四万万五千");
        System.out.println(matcher.matches());