.net 如何将正则表达式与带有可选圆括号的模式匹配?

.net 如何将正则表达式与带有可选圆括号的模式匹配?,.net,regex,parentheses,optional,.net,Regex,Parentheses,Optional,我正在寻找一个单行正则表达式,它匹配带有可选括号的模式。当括号出现时,它们不应包含在匹配的模式中 以下粗体文本演示了哪些内容应该/不应该匹配: 应匹配: “标题说明(AAA123)” “(ABC000)标题说明” “标题说明DEF999” “标题-RST321-说明” 不应匹配: “标题说明AB123” “标题说明CCC456a” “标题说明(ABE999c)” 试试这个正则表达式: \b[a-zA-Z]{3}\d{3}\b 这符合: # \b - A word bounda

我正在寻找一个单行正则表达式,它匹配带有可选括号的模式。当括号出现时,它们不应包含在匹配的模式中

以下粗体文本演示了哪些内容应该/不应该匹配:

应匹配:

“标题说明(AAA123)”

“(ABC000)标题说明”

“标题说明DEF999

“标题-RST321-说明”

不应匹配:

“标题说明AB123”

“标题说明CCC456a”

“标题说明(ABE999c)”

试试这个正则表达式:

\b[a-zA-Z]{3}\d{3}\b
这符合:

# \b          - A word boundary,
# [a-zA-Z]{3} - followed by 3 letters,
# \d{3}       - followed by 3 digits,
# \b          - followed by a word boundary.
正则表达式不关心括号(如请求的括号),但不匹配过长的字符串。

试试这个正则表达式:

\b[a-zA-Z]{3}\d{3}\b
这符合:

# \b          - A word boundary,
# [a-zA-Z]{3} - followed by 3 letters,
# \d{3}       - followed by 3 digits,
# \b          - followed by a word boundary.

正则表达式不关心括号(如请求的括号),但不匹配过长的字符串。

那么,您尝试了什么?@Rohit Jain,而不是对其进行良好的编辑。你搞砸了。@RohitJain:尝试过这个“()?([a-zA-Z]{3}[0-9]{3})()?”但是不管它是括号还是not@BrianScott:您使用的是什么语言?@nhahdh:using.Net,但可以根据需要翻译任何regex语句。那么,您尝试了什么?@Rohit Jain,而不是对其进行很好的编辑。你搞砸了。@RohitJain:尝试过这个“()?([a-zA-Z]{3}[0-9]{3})()?”但是不管它是括号还是not@BrianScott:您使用的是什么语言?@nhahtdh:using.Net,但可以根据需要翻译任何regex语句。您还将匹配
\uuuuuu345
234456
@nhahtdh:Whoops,我没有想到
\w
也会匹配这些。编辑,谢谢@瑟布鲁斯:太好了,对我来说,\b是丢失的钥匙。我不知道如何同时匹配空格或括号。谢谢。没问题,@Brian!我建议你看看,它有很多关于正则表达式的有用信息。谢谢你接受我的回答^ ^你也会匹配
\uuuuuuu345
234456
@nhahdh:哎呀,我没想到
\w
也会匹配那些。编辑,谢谢@瑟布鲁斯:太好了,对我来说,\b是丢失的钥匙。我不知道如何同时匹配空格或括号。谢谢。没问题,@Brian!我建议你看看,它有很多关于正则表达式的有用信息。谢谢你接受我的回答^_^