Regex 使用正则表达式检测没有摘要的方法

Regex 使用正则表达式检测没有摘要的方法,regex,Regex,是否有一个正则表达式匹配没有摘要的方法 /// <summary> /// Test /// </summary> private void SampleOne() { } ///<summary> /// Test ///</summary> private void SampleTwo(string testParameter) { } private void WithOutSummaryBlocks() { }

是否有一个正则表达式匹配没有摘要的方法

/// <summary>
/// Test
/// </summary> 
private void SampleOne()
{

}

///<summary>
/// Test
///</summary>
private void SampleTwo(string testParameter)
{
   
}


private void WithOutSummaryBlocks()
{
   
}

谢谢你的支持,我解决了这个问题。下面是Regex语句和用法示例

正则表达式:

(|>|)+\\s*s*\\b(public|private|internal|protected|void)\\s*s*\\b(async)?\\s*\\b(static|virtual|abstract|void)?\\s*\\b(async)?\\b(Task)?\\s*[A-Za-z_0-9]*(?<method>\\s[A-Za-z_][A-Za-z_0-9]*\\s*)\\((([a-zA-Z\\[\\]\\<\\>]*\\s*[A-Za-z_][A-Za-z_0-9]*\\s*)[,]?\\s*)+\\)
C用例:

try {
  string regex = @"(|>|)+\\s*s*\\b(public|private|internal|protected|void)\\s*s*\\b(async)?\\s*\\b(static|virtual|abstract|void)?\\s*\\b(async)?\\b(Task)?\\s*[A-Za-z_0-9]*(?<method>\\s[A-Za-z_][A-Za-z_0-9]*\\s*)\\((([a-zA-Z\\[\\]\\<\\>]*\\s*[A-Za-z_][A-Za-z_0-9]*\\s*)[,]?\\s*)+\\)";
  string allTextFromFile = "YOUR SOURCE CODE";
  MatchCollection matchedMethods = Regex.Matches(allTextFromFile, regex,
    RegexOptions.Singleline, TimeSpan.FromSeconds(30));

  foreach(Match methodText in matchedMethods) {
    if (!methodText.Value.Contains(">")) {
      //This method also does not have summary blocks. 
      Console.WriteLine($"Method Name {methodText.Groups.LastOrDefault().Value}");
    }
  }
} catch (RegexMatchTimeoutException timeoutException) {
  Console.WriteLine("skipped regex");
}