本帖最后由 download_99 于 2011-09-12 00:36:00 编辑

解决方案 »

  1.   

    单项式不是一定要有数,\\d+/\\d+?换成\\d*?
      

  2.   

    完整代码如下:
    public class Test{
        public static void main(String[] args){
            String[] s1="+12-3/5x+16/25".split("[\\+|-]\\d*/\\d+?x?");
            for(String x:s1)
            System.out..println(x);
        }
    }
    输出:
    run:
    +125
    成功生成(总时间:0 秒)
      

  3.   

    你想要的结果是什么样子?你这个split如果单项式的正则是对的,那么结果会是空。如果你想要最后得到单项式,那么就不能以单项式split。
      

  4.   

    如果你想通过split取出单项式,那么public class Test{
      public static void main(String[] args){
      String[] s1="+12-3/5x+16/25".split("(?<=.+)(?=[+-].)");
      for(String x:s1)
      System.out.println(x);
      }
    }