我有这个:
aaa(bbb)
我(bbb)使用这个匹配:
\(.*?\)
我现在希望匹配aaa,所以我尝试了“积极的前瞻断言”。这不起作用。
(\(.*?\))(?=\()
我怎样才能匹配前面的字母(?
我有这个:
aaa(bbb)
我(bbb)使用这个匹配:
\(.*?\)
我现在希望匹配aaa,所以我尝试了“积极的前瞻断言”。这不起作用。
(\(.*?\))(?=\()
我怎样才能匹配前面的字母(?
试试这个,
.*(?=\()
正则表达式好友截图

在我看来,您实际上并不需要前瞻。您可以只使用[^(]*匹配第一个之前的所有内容(
^([^(]*)
要获得它和 的内容(),请添加您现有的(.*?)捕获组。
^([^(]*)\((.*?)\)
为什么不简单地匹配/(aaa)(\(bbb\))/,然后用$1and引用你的匹配项$2?
(\(.*?\))(?=\()
^^ ^^
这些强制将“aaa”括在括号中(shell 后面是一个左括号)。你似乎想要
/(.+?)(?=\(.*?\))/