分享

java正则表达式分析替换字符串

 KILLKISS 2013-01-30
Java代码  收藏代码
  1. public static void main(String[] args){  
  2.           
  3.         String regex = "\\$\\{(.+?)\\}";  
  4.         String str = "<a onclick=\"showUserName('${session.user.username}','${session.user.password}');\" >linkme</a>" ;  
  5.         Pattern pattern = Pattern.compile(regex);  
  6.         System.out.println(pattern);  
  7.         Matcher matcher = pattern.matcher(str);  
  8.         StringBuffer sb = new StringBuffer();  
  9.         while (matcher.find()) {  
  10.             System.out.println(">>>>> replace sequence : " + matcher.group(0));  
  11.             System.out.println(">>>>> index range : (" + matcher.start() + ", " + matcher.end() + ")");  
  12.             System.out.println(">>>>> sub : " + str.substring(matcher.start(), matcher.end()));  
  13.             matcher.appendReplacement(sb, "123");  
  14.             System.out.println("-----------------");  
  15.         }  
  16.         matcher.appendTail(sb);  
  17.         System.out.println(">>>> sb : " + sb.toString());  
  18.   
  19.     }  
  20.   
  21. 输出:  
  22.   
  23. \$\{(.+?)\}  
  24. >>>>> replace sequence : ${session.user.username}  
  25. >>>>> index range : (2650)  
  26. >>>>> sub : ${session.user.username}  
  27. -----------------  
  28. >>>>> replace sequence : ${session.user.password}  
  29. >>>>> index range : (5377)  
  30. >>>>> sub : ${session.user.password}  
  31. -----------------  
  32. >>>> sb : <a onclick="showUserName('123','123');" >linkme</a>  

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章