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

请教高手一个超难问题!!!!!!
用正则实现下面的效果:
 判断一个字符串是否以"人数(5)" 开始(注:括号里的数字可以是不确定整数,数字是不能以0开头的整数),并且字符串只能包含一个这样的匹配。 如果匹配上了就把括号中的数字取出来。 请教如何实现

------解决方案--------------------
Java code

        Pattern pattern = Pattern.compile("^人数\\((\\d)+\\)");
        Matcher matcher = pattern.matcher("人数(2345)asdfasdf");
        if(matcher.find()) {
            System.out.println(matcher.group().replaceAll("(\\D)", ""));
        }

------解决方案--------------------
探讨

Java code

Pattern pattern = Pattern.compile("^人数\\((\\d)+\\)");
Matcher matcher = pattern.matcher("人数(2345)asdfasdf");
if(matcher.find()) {
System.out.println(ma……

------解决方案--------------------
Java code
^人数\\((^[1-9]\\d*)+\\)