【发布时间】:2021-09-01 20:51:03
【问题描述】:
我需要一个正则表达式 @"" 来匹配单词末尾的两个括号 ()。
试过\w*()\b,但没用。
所以我需要匹配这样的内容:"Hello, world test(test) testing"。
我只需要它来匹配那里的test(word)。
【问题讨论】:
-
/[(].*[)]/g使用这个。并查看regexr.com
我需要一个正则表达式 @"" 来匹配单词末尾的两个括号 ()。
试过\w*()\b,但没用。
所以我需要匹配这样的内容:"Hello, world test(test) testing"。
我只需要它来匹配那里的test(word)。
【问题讨论】:
/[(].*[)]/g 使用这个。并查看regexr.com
如果最后一个括号后有空格,则使用单词边界将无法匹配,因为) 和空格之间没有单词边界。
请注意,使用\w* 会选择性地重复单词字符,也可能只匹配()
你可能会使用:
\w+\((?:\w+(?:\s*,\s*\w+)*)?\)
\w+ 匹配 1+ 个单词字符\(匹配(
(?:非捕获组\w+ 匹配 1+ 个单词字符
(?:\s*,\s*\w+)* 可选择重复匹配 , 和 1+ 个单词字符)? 关闭组并使其成为可选\)匹配)
【讨论】:
( 和 ) 是用于分组的特殊字符。所以你必须对它们进行转义以匹配文字括号。您还需要在括号内添加一些内容以匹配那里的单词
\w*\(\w*\)\b
【讨论】:
【讨论】: