Skip to main content
 首页 » 编程设计

c#之使用正则表达式提取所有模式

2024年06月20日67lovecherry

我正在实现从特定字符串中提取模式。 该模式应以 Column((表示 Excel 数据输入中的特定列)或 Cell((表示 Excel 数据输入中的特定单元格)开头。

  • 输入字符串 = "列(F)/100 + 单元格(B,2)/10"
  • 预期输出:Column(F),Cell(B,2)。

源代码:

List<string> result = new List<string>(); 
Regex patternParser = new Regex(@"(?:Column\()\S+\).+?|(?:Cell\()\S+\).+?", RegexOptions.Compiled | RegexOptions.IgnoreCase); 
foreach (Match m in patternParser.Matches(VarEval)) 
{ 
     result.Add(m.Value); 
} 

我得到了结果:Column(F)/和 Cell(B,2)/。

请您参考如下方法:

\b(?:Column|Cell)\b\(.*?\) 

您可以简单地执行此操作。查看演示。

https://regex101.com/r/mT0iE7/26