开发者

Extract all Parameters with RegEx

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

上一篇:

下一篇:

精彩评论

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

最新问答

问答排行榜