我想把如下代码中数字匹配出来
if (){
if (a>=b) then printf ("%s", a);
end =
23 87
+- +
<>
3a
a3
}
于是我用了\\d+的正则表达式,但是不想把3a和a3中的3也给匹配出来了,我只想要把23和87给匹配出来,该怎么做啊?

解决方案 »

  1.   

    \\d+ 是数字出现一次或者多次 肯定会把3a和a3匹配出来 
    你可以用这个试试看:
    ^\\d$\\d   匹配开头和结尾都是数字的
    \\d{2}   数字出现两次的
      

  2.   

    \\d{2} 用find()查找 用group()输出 就可以找到2个数字的子字符串了
      

  3.   

    谢谢LSSS的启发,我用的\\b\\d+\\b,貌似可以实现取出数字了。