首页 > 解决方案 > 如何使用 C# 和正则表达式从 sql 查询创建模板?

问题描述

我正在尝试使用 C# 和正则表达式从 sql 查询创建模板,但我无法成功。我怎样才能做到这一点?

例如:

我的 sql 选择查询:

select c.[Id], C.Name from Customer c.Surname='Smith' and c.Address like 'Newyork'

肯定是 :

select c.[Id], C.Name from Customer c.Surname='{Surname}' and c.Address like '{Address}'

另一个样本:

select c.[Id], C.Name from Customer c.Surname='Smith' and c.Address = 'xyx glk'

肯定是 :

select c.[Id], C.Name from Customer c.Surname='{Surname}' and c.Address = '{Address}'

另一个:

UPDATE table_name
SET column1 = 'value1', column2 = 'value2'
WHERE condition;

肯定是:

UPDATE table_name
SET column1 = '{column1}', column2 = '{column2}'
WHERE condition;

我需要你的帮助才能做到。如何在 C# 中使用正则表达式?

标签: c#sql.netregex

解决方案


可能你从中得到一些想法。它正在工作。

 string strtext = @"select c.[Id], C.Name from Customer c.Surname='Smith' and c.Address = 'xyx glk'";
Regex rex= new Regex(@"([^\s.]+)\s*=\s*'(.*?)'");
var replaced = rex.Replace(strtext, "$1={$1}");

演示: https ://regex101.com/r/aUhESX/3


推荐阅读