zoukankan      html  css  js  c++  java
  • "Illegal group reference"异常的分析

    String replaceAll(regex, replacement)函数 ,  由于第一个参数支持正则表达式,replacement中出现“$”,会按照$1$2的分组

    模式进行匹配,当编译器发现“$”后跟的不是整数的时候,就会抛出“非法的组引用”的异常。

    所以我们在使用replaceAll(regex, replacement)函数的时候要特别小心。

    如果真的要把String中的字符替换成"$AAA"的话,可以对replacement 进行“$”的转义处理:
    public static String filterDollarStr(String str) {
      
      String sReturn ="";
      if (!StringUtils.trim(str).equals("")) {
       
       
       if(str.indexOf('$', 0)>-1)
       {
        while(str.length()>0)
        {
         if(str.indexOf('$', 0)>-1)
         {
                sReturn +=str.subSequence(0, str.indexOf('$', 0));
                sReturn+="//$";
                str =str.substring(str.indexOf('$', 0)+1, str.length());
         }
         else
         {
          sReturn+=str;
          str="";
         }
          
        }
        
        
       }
       else
       {
        
        sReturn = str;
       }
       
       

      }
      return sReturn;
     } 

  • 相关阅读:
    [CTSC2008]网络管理
    [HNOI/AHOI2018]转盘
    [HAOI2015]树上染色
    [CTSC2017]吉夫特
    [CTSC2011]幸福路径
    Comet OJ
    2019各省省选试题选做
    HNOI2019 简要题解
    HNOI2019游记
    JOISC2019 简要题解
  • 原文地址:https://www.cnblogs.com/superch0054/p/4010167.html
Copyright © 2011-2022 走看看