Как извлечь имена параметров из оператора SQL с помощью регулярного выражения - PullRequest
2 голосов
/ 04 июля 2010

Я хочу извлечь имена параметров из запроса следующим образом:

select * from table where a = :param1 and b = :param2

Я написал это выражение: "(?<param>:\w* )"

Это дает мне :param1 дважды

Примечание: он находится в приложении C # .Net.

Любая помощь !!

Спасибо

1 Ответ

3 голосов
/ 04 июля 2010

Я попробовал этот код C # - он выбирает два совпадения, одно для :param1 и другое для :param2

Regex getParamRegex = new Regex(@"(?<param>:\w*)", RegexOptions.Compiled | RegexOptions.IgnoreCase);

string input = "select * from table where a = :param1 and b = :param2";

var allMatches = getParamRegex.Matches(input);

foreach (var match in allMatches)
{
   string work = match.ToString();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...