使用正则表达式匹配进行文件类名的更改并且去除注释
2023-09-14 08:58:30 时间
我的收获:
写正则的时候先找个正则匹配工具测试。
代码:
package com.allcheer.acl.omc.util.tool; import org.apache.commons.io.IOUtils; import java.io.File; import java.io.FileInputStream; import java.io.FileReader; import java.io.FileWriter; /** * Created by Administrator on 2016/12/12. * 将DO变成Model且去除注释 */ public class Do2ModelNoDoc { public static File transFile(File src){ String targetFileName; String contentString; String name=src.getName(); targetFileName=name.replace("DO.","Model."); File target=new File(src.getParentFile(),targetFileName); FileReader fis=null; FileWriter fw=null; try { target.createNewFile(); fw=new FileWriter(target); contentString=IOUtils.toString(new FileInputStream(src)); contentString=contentString.replaceAll("/\\*(.|\\s)*?\\*/",""); contentString=contentString.replace(src.getName().replace(".java",""),targetFileName.replace(".java","")); fw.write(contentString); fw.flush(); }catch (Exception e){ e.printStackTrace(); }finally{ try{ if(fis!=null) fis.close(); if(fw!=null) fw.close(); }catch(Exception e){ e.printStackTrace(); } } return target; } }
代码存在bug,就是如果System.out.println("/** uugfgug **/");会被匹配
我想的更改成的正则:[^'"]/\*(.|\s)*?\*/[^'"]
但是有问题,没时间,上班,希望会的帮忙写个正确的正确
相关文章
- [Linux] Ubuntu下解压rar文件的方法
- C#FTP下载文件出现远程服务器返回错误: (500) 语法错误,无法识别命令
- 实用正则表达式扫描android SDcard的文件
- Python基于正则表达式实现文件内容替换的方法
- 控制文件多工
- Python基于正则表达式实现文件内容替换的方法
- Hadoop hdfs文件块信息获取/文件重命名/修改文件的副本数量代码示例
- git 配置,代码提交到仓库,不小心将node_modules上传,处理操作。.gitignore 删除已提交的文件
- Python编程:读写excel文件
- 《Kotin 极简教程》第15章 Kotlin 文件IO操作、正则表达式与多线程
- Gradle 1.12 翻译——第十六章. 使用文件
- Debug目录下没有.exe文件
- Systemctl unit文件详解
- Android ffmpeg yuv原始数据写入yuv文件
- POI读取Excel文件时,row.getCell(0).getStringCellValue()报错:数字转换异常
- WebRTC报错:depot_tools/bootstrap_python3: um.8_bin/python3/bin/python3: 没有那个文件或目录(三)
- 文件IO常用函数