RegEx以[和结尾]开头 - 仅匹配单词

时间:2012-10-12 14:16:28

标签: c# regex

给出以下字符串:

var s = "my [first] ga[m]e and [abc]de]\nThe [Game]"

我使用哪个正则表达式匹配:

0 - [first]
1 - [abc]de]
2 - [Game]

我已尝试var pattern2 = new Regex(@"\W\[.*?\]\W");,但未找到[Game]

我还希望能够匹配“[my] gamers\t[pro]

0 - [my]
1 - [pro]

2 个答案:

答案 0 :(得分:4)

\[[^\[]{2,}\]

<强>解释

\[         # Match a [
[^\[]{2,}  # Match two or more non-[ characters
\]         # Match ]

RegExr上查看。

答案 1 :(得分:0)

除了非单词字符外,还需要明确匹配字符串的开头和结尾:

(?:^|\W)\[(.*?)\](?:$|\W)

捕获组将获取括号内的单词。