正则表达式的小应用

原先项目中的国际化用的是Messages.getString("xxx.xxx")的方式,后来打算换到OSGI的支持上,仿照Eclipse和LumaQQ,并且把资源文件按照package分拆成多个小文件,然后就变成了ActionMessage.xxx_xxx,如果每个文件逐一替换,工作量未免太大,于是想到了正则表达式:

 
  1. //文件读写的代码在此省略
  2. String regEx = "Messages.getString\\W\\W([a-zA-Z]+).([a-zA-Z]+\\d?+)\\W\\W";  
  3. Pattern p = Pattern.compile(regEx);  
  4. Matcher m = p.matcher(input);  
  5. if (m.find()) {  
  6.     String s2 = m.replaceAll("WizardMessages." + m.group(1)  
  7.             + "_" + m.group(2));  
  8.     System.out.println(s2);  
  9. else  
  10.     System.out.println(input);  

你可能感兴趣的:(eclipse,工作,正则表达式,osgi)