代码中的去掉注释

有时候我在工作当中需要将代码中的注释去掉 下面我们就介绍一下吧

利用python去掉java中的注释#

复制代码
import com.example.pojo.MethodInfo;

public class MethodInfoUtil{


    private static boolean quoteFlag = false, lineStarFlag = false;
    private MethodInfoUtil() {
    }
    public static void main(String[] args) {
        String fileContent = readFileContent("C:\\Users\\tom\\Desktop\\User.java");
        List<MethodInfo> methodInfos = MethodInfoUtil.getMethodInfo(fileContent);
        for (MethodInfo mi : methodInfos) {
            System.out.println(mi.getMethodBody());
            System.out.println("=========");
            System.out.println("==={======");
        }
//        System.out.println(fileContent);
    }
    public static List<MethodInfo> getMethodInfo(String fileContent) {
        // "public void test() "例如判断该字符串是否匹配正则。
        String endWithMethodName = "[\\s\\S]*\\)\\W*";
        // .java文件内容转为字符数组
        List<MethodInfo> mis = new ArrayList<>();
        // 得到方法名、参数类型、方法体,存放到集合中
        char[] charArray = fileContent.toCharArray();
        getBody2(charArray, fileContent, endWithMethodName,mis);
        return mis;
    }
    /**
     * 获取方法名、参数、方法体
     * @param charArray
     * @param readFileContent
     * @param endWithMethodName
     */
    public static void  getBody2(char[] charArray,String readFileContent,String endWithMethodName,List<MethodInfo> mis) {
        String body = getBody(charArray);
一段java代码
复制代码
复制代码
def removeComments(s):
    i, n = 1, len(s)

    ans = ''
    while i < n:
        if s[i - 1] + s[i] == '//':
            i = s.find('\n', i) + 1
        elif s[i - 1] + s[i] == '/*':
            i = s.find('*/', i + 1) + 3
        else:
            ans += s[i - 1]
            i += 1
    return filter(len, ans.split('\n'))

with open(r
'E:\00004\MethodInfoUtil.java','r',encoding='utf-8') as f: ret = removeComments(f.read()) # print(ret) for i in ret: print(i)
复制代码

 #

 

posted @   流年中渲染了微笑  阅读(719)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示
CONTENTS