如何在 C# 中使用正则表达式匹配多行
本文关键字:正则表达式 | 更新日期: 2023-09-27 18:34:58
我正在尝试替换tex文件中的某些内容,例如下面。
我想匹配从'starttable
到第二'HL
的内容。
'starttable[|lp(0.08'textwidth)|lp(0.35'textwidth)|lp(0.48'textwidth)|lp(0.08'textwidth)|]
'HL
'NC Req. Id
'NC Description
'NC Test Scenario
'NC Result
'NC'AR
'HL
'NC TAF-89
'NC Trigger test start - from jig
'NC
'NC Unavailable
'NC'AR
'NC TAF-88
'NC Trigger test start - using scanner
'NC
'NC Unavailable
'NC'AR
'HL
我试过
Regex tableHeaderRegex = new Regex(@"(''starttable(.*))(''HL..(''NC.*)+''HL)",
RegexOptions.Singleline);
但这并没有止步于第二'HL
,而是继续追平最后一'HL
,因为''NC.*
我也尝试过RegexOptions.Multiline
但没有成功。
''starttable['s'S]*?''HL['s'S]*?''HL
您可以在没有标志的情况下使用它g
以实现相同的目的。请参阅演示。
https://regex101.com/r/vN3sH3/41