0

尝试解析 SQL 字符串并提取参数。

例如:“从 @Yr1 和 @Yr2 之间的 [Year] 表中选择 *”

我想拔出“@Yr1”和“@Yr2”

我尝试了很多模式,但都没有奏效,例如:

matches = Regex.Matches(sSQL, "\b@\w*\b")

matches = Regex.Matches(sSQL, "\b\@\w*\b")

有什么帮助吗?

4

2 回答 2

1

您试图在 @ 之后而不是之前放置单词边界。也许是这样:

\w(@[A-Z0-9a-z]+)

或者

\w(@[^\s]+)

于 2010-03-05T20:06:54.553 回答
1

我会去的

/^|\s(@\w+)\s|$/

或者如果您不想包含 @

/^|\s@(\w+)\s|$/

虽然我也喜欢上面的乔尔,所以也许其中之一

/^|\s(@[^\s]+)\s|$/
/^|\s@([^\s]+)\s|$/
于 2010-03-05T20:26:19.007 回答