Regex模式[TableName].[字段名称]

本文关键字:字段 TableName 模式 Regex | 更新日期: 2023-09-27 18:22:13

我有一个计算字段的字符串,其中包含字段、运算符、函数等。我需要从这个字符串中提取字段。字段的格式为:[TableName]。[FieldName],其中TableName和FieldName可能包含空格。我用regex:解决了TableName和FieldName没有空格的问题

    List<string> fieldsFound = new List<string>();
    string pattern = @"'[('w*)('])('.)('[)('w*)('])";
    foreach (Match match in Regex.Matches(formula, pattern))
    {
        fieldsFound.Add(match.Value);
    }

因此,我需要一个模式,它可以在TableName和FieldName中允许空格。谢谢

Regex模式[TableName].[字段名称]

'w's放入一个字符类中,以便匹配单词和空格字符。

'[(['w's]*)('])('.)('[)(['w's]*)('])

演示

如果您不想捕获[]、内的前导空格和尾随空格,请使用以下正则表达式

'['s*(['w's]*?)'s*']'.'['s*(['w's]*?)'s*']

演示