zoukankan      html  css  js  c++  java
  • replace_code-3

    #! bin/usr/evn python
    # -*- coding:utf-8 -*-
    
    import os, sys, pyperclip
    import easygui as g
    import re
    file_name = 'tt3'
    with open(file_name, 'r', encoding='utf-8') as rf:
        old_text = rf.read()
    
    replace_code = r'''void test(void)
    {
        int a=10;
        char s[10]={0};
        printf("a=%d,s=%s
    ",a,s);
    }
    '''
    target_code_file='targetcode'
    with open(target_code_file,'r',encoding='utf-8') as rrrf:
        target_code_list= rrrf.readlines()
        # print(target_code_list)
    
    
    bracketsnum = replace_code.count('{')
    
    code_lines=replace_code.count('
    ')
    
    pat = replace_code.split('
    ')[0]
    # print(pat)
    
    # pat = pat.replace('(', '(')
    # pat = pat.replace(')', ')')
    # pat = pat.strip('{')
    # begin coding regex
    # repat = '{:s}{}{}{}{}'.format(pat, '.*{.+}', '{', '{:d}'.format(bracketsnum), '}')
    # patt = re.compile(repat, re.M | re.S)
    # print(patt)
    # result = re.findall(patt, old_text)
    pposi=0
    posi=0
    str_posilist=[]
    line_posilist=[]
    posi=old_text.find(pat,pposi)
    posil=old_text.count('
    ',0,posi)
    str_posilist.append(posi)
    # 找出文位置
    while posi !=-1:
        pposi = posi+1
        posi=old_text.find(pat,pposi)
        str_posilist.append(posi)
    str_posilist.pop()
    # 找出行数
    for po in str_posilist:
        posil=old_text.count('
    ',0,po)
        line_posilist.append(posil)
    print(line_posilist)
    
    with open(file_name, 'r', encoding='utf-8') as rrf:
        old_lines=rrf.readlines()
        # print(old_lines)
    for line in line_posilist:
        lnum=line
        lnu=line+6
        target=old_lines[lnum:lnu]
        target=target_code_list
    # print(old_lines)
    # target=old_lines[3:9]
    # print(target)
  • 相关阅读:
    flume 安装过程记录
    hive 动态分区插入
    hive 数据导入
    scala 学习笔记
    hive 日志
    Linux下设置和查看环境变量
    数据结构(4):图解递归调用机制
    使用数据结构栈实现表达式计算器
    数据结构(3):java使用数组模拟堆栈
    使用Vue和Element-ui的cdn模式临摹一个后台框架
  • 原文地址:https://www.cnblogs.com/ezway/p/6543908.html
Copyright © 2011-2022 走看看