给出以下字符串:
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]
答案 0 :(得分:4)
\[[^\[]{2,}\]
<强>解释强>
\[ # Match a [
[^\[]{2,} # Match two or more non-[ characters
\] # Match ]
在RegExr上查看。
答案 1 :(得分:0)
除了非单词字符外,还需要明确匹配字符串的开头和结尾:
(?:^|\W)\[(.*?)\](?:$|\W)
捕获组将获取括号内的单词。