zoukankan      html  css  js  c++  java
  • C#正则实现匹配一块代码段

    最近项目,生成聚合网关,但是生成的网关文件中,存在着不必要的代码段,比如一个类A,类B等

    之前一直使用手动删除,这么做劳民伤财,浪费时间,考虑使用正则写一个工具实现自动删除。

    正则写法:

    string pattern = @"public partial class A(s|S)+?(}s*?){2}";
    Regex regex = new Regex(sortPattern, RegexOptions.Multiline);
    text = regex.Replace(text, "");
    

      

    以上可以将

    public partial class A
    {
       // properties
      ....
      public string ToJson() 
      {
         return Newtonsoft.Json.JsonConvert.SerializeObject(this);
      }
    }
    

    如果遇到简单的类型代码片段,比如枚举

    public enum B
    {
      a = 0,
      b = 1
    }
    

    则可以使用

    string enumPattern = @"(?is)public enum.*?(}s*)";
    Regex enumRegex = new Regex(enumPattern, RegexOptions.Multiline);          
    text = enumRegex.Replace(text, "");
    

      

  • 相关阅读:
    [Apio2014]回文串
    省队集训day6 C
    省队集训day6 B
    省队集训Day3 light
    省队集训Day3 tree
    多串匹配
    ubuntu卸载福昕阅读器
    greenlet
    python multithread task_done
    mysql参数调优
  • 原文地址:https://www.cnblogs.com/walt/p/11390407.html
Copyright © 2011-2022 走看看