Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 正则表达式以[开头,以]-仅匹配字结尾_C#_Regex - Fatal编程技术网

C# 正则表达式以[开头,以]-仅匹配字结尾

C# 正则表达式以[开头,以]-仅匹配字结尾,c#,regex,C#,Regex,鉴于以下情况: var s = "my [first] ga[m]e and [abc]de]\nThe [Game]" 我使用哪个regex匹配: 0 - [first] 1 - [abc]de] 2 - [Game] 我已经尝试了var pattern2=newregex(@“\W\[.*?\]\W”)但它找不到[游戏] 我还希望能够匹配“[my]玩家\t[pro]” 说明: \[ # Match a [ [^\[]{2,} # Match two or more no

鉴于以下情况:

var s = "my [first] ga[m]e and [abc]de]\nThe [Game]"
我使用哪个regex匹配:

0 - [first]
1 - [abc]de]
2 - [Game]
我已经尝试了
var pattern2=newregex(@“\W\[.*?\]\W”)但它找不到
[游戏]

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

说明:

\[         # Match a [
[^\[]{2,}  # Match two or more non-[ characters
\]         # Match ]
在电视上看

说明:

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

请参见。

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

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

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

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

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

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

可能重复:进一步阅读:我不认为这是重复的。他不是在寻找平衡的括号(
[abc]de]
不平衡),他是在寻找单词边界处的括号。可能的重复:进一步阅读:我不认为这是重复的。他不是在寻找平衡的括号(
[abc]de]
是不平衡的),他是在寻找单词边界处的括号。很好,但尽管有解释,我还是要考虑一下我认为这是行不通的。我将输入更改为
my[first]ga[m]e和]de]\n[Game]
,它匹配了
[m]e和]de]
@Barmar:是的,正则表达式允许在两个分隔括号之间使用除
[
以外的任何字符。规范对“单词”中允许的和不允许的内容不是很清楚。也许
\[\S{2,}\]
会更合适(括号之间只允许使用非空格字符)-但这需要OP来指定。我只是将左括号和右括号都放在负数类中,如下所示:
\[^[\]{2,}\]
+1.@ridgerunner:这不起作用,因为有些示例包含一个右括号作为要匹配的单词的一部分…很好,但尽管有解释,我还是不得不考虑它。:)我认为这不起作用。我将输入更改为
my[first]ga[m]e和]de]\n[Game]
并且它匹配了
[m]是的,正则表达式在两个分隔括号之间允许除
[
以外的任何字符。规范对“单词”中允许和不允许的字符不是很清楚。也许
\[\S{2,}\]
更合适(括号之间只允许非空格字符)-但这仍然需要OP来指定。我只是将左括号和右括号都放在否定类中,如下所示:
\[^[\]]{2,}\]
+1.@ridgerunner:这不起作用,因为某些示例包含一个右括号作为要匹配的单词的一部分。。。