c# - 正则表达式 - 匹配相同模式的组

标签 c# regex regex-group

我正在尝试使用 C# 对匹配相同模式的正则表达式进行分组。 这是一个我无法开始工作的小例子。

我需要获取所有单引号之间的字符串(例如 CodigoEmpresa)

uses MainRecord, objErrorList, SysUtils, XMLMXMWebServiceReturn, objMainProcesso,
 objProcessoWS, objProcessaRelatorioQuickReport, QuickRpt, Forms,
 RBalanc, RBalancete, RBaCCMens, RBalaMensal, RBalaMensalCons,
 objcadcontabilidade, objContabilidadeValidacoes;

const
CODIGO_EMPRESA             = 'CodigoEmpresa';
ANO_MES                    = 'AnoMes';
RELATORIO_POR              = 'RelatorioPOR';
CONTA_INI                  = 'ContaIni';
CONTA_FIM                  = 'ContaFim';
GRAU_CONTA                 = 'GrauConta';
CCUSTOS_INI                = 'CCustosIni';
CCUSTOS_FIM                = 'CCustosFim';
GRAU_CCUSTOS               = 'GrauCCustos';
DETALHAR_CONSOLIDADO       = 'DetalharConsolidado';
DESCONSIDERAR_ENCERRAMENTO = 'DesconsiderarEncerramento';
QUEBRA_CCUSTO              = 'QuebraCCusto';
CONTAS_SEM_MOVIMENTO       = 'ContasSemMovimento';
CODIGO_ALTERNATIVO         = 'CodigoAlternativo';

const

ERROR_BALANCETE_MENSAL_0001 = 'BALANC0001';
ERROR_BALANCETE_MENSAL_0002 = 'BALANC0002'; //Empresa Inexistente
ERROR_BALANCETE_MENSAL_0003 = 'BALANC0003';
ERROR_BALANCETE_MENSAL_0004 = 'BALANC0004';
ERROR_BALANCETE_MENSAL_0005 = 'BALANC0005';
ERROR_BALANCETE_MENSAL_0006 = 'BALANC0006';
ERROR_BALANCETE_MENSAL_0007 = 'BALANC0007';
ERROR_BALANCETE_MENSAL_0008 = 'BALANC0008';

到目前为止我已经尝试过了:

Match match = Regex.Match(delphiFileInText, @"const.+=\s*'(?<property>[\d\w]+)'", RegexOptions.IgnoreCase | RegexOptions.Singleline);

但我得到的只是最后一场比赛 (BALANC0008);

我希望我能说清楚。感谢帮助

最佳答案

只需将您的表达式替换为

'(?<property>[\d\w]+)'

将获得所有这些。

关于c# - 正则表达式 - 匹配相同模式的组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19937454/

相关文章:

java - 计算字符串中字符匹配的数量(仅限正则表达式)?

javascript - 请翻译这段 JavaScript 乱码?

javascript - JS RegEx 找不到表达式

.net - 正则表达式组字符串,其中分隔符可以使用两次(.net 正则表达式)

javascript - 在一组中匹配量化单词字符多次

c# - 如何以编程方式显示文本框的键盘?

c# - 命名空间和类具有相同的名称

c# - 当我旋转 Android 模拟器以将方向更改为横向模式或纵向模式时,不会调用“OnSizeAllocation”

c# - 将自定义动词添加到 ToolStrip 设计器,而无需重新实现 ToolStripDesigner

javascript - 正则表达式接受至少 6 个字符,至少一个字母和以下至少之一 : 0123456789-. @_