开发者

Extract all Parameters with RegEx

开发者 https://www.devze.com 2023-03-17 15:19 出处:网络
I have the following SQL sample statement in a string variable INSERT INTO T_Application ( ApplicationGroupId,

I have the following SQL sample statement in a string variable

INSERT INTO T_Application
(
    ApplicationGroupId,
    Name,
    Component,
    SubComponent,
    Description
)
VALUES
(
    @ApplicationGroupId,
    @Name,
    @Component,
    @SubComponent,
    @Description
)

SET @Id = SCOPE_IDENTITY()

What I want is to have all Parameter names (Id, ApplicationGroupId, Name开发者_开发技巧, Component, SubComponent, Description) in a List<string>. How can I write the RegEx to extract all Parameters Names? The RegEx should also work if the Parameters are in one line, spaces between , etc.


Regex.Matches(sql, @"\@\w+").Cast<Match>().Select(m => m.Value).ToList ();

Resulting List:

@ApplicationGroupId
@Name
@Component
@SubComponent
@Description   


You could try this regex:

\({0,1}\s*(\w*)\,

You can then get the matches using flags


You can use following regular expression :

insert into[\s\S]+?\((?<parameter_names>([\s\S]+?))\)

You will get all the parameters in group named 'parameter_names'.

0

精彩评论

暂无评论...
验证码 换一张
取 消