Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想在这个字符串中使用 Matcher: #Function()(a)
仅选择:#Function()
我正在使用这个正则表达式:
Pattern pat = Pattern.compile("\\#.*\\)"); Matcher match = pat.matcher(s);
而且我选择的比我想要的多:#Function()(a)。
如何在第一次出现')'时停止 Matcher ?
默认情况下.*是贪心的,所以它会尽可能多地匹配,同时保持整个事情合法。您可以通过使用来使其不情愿.*?,然后它将尽可能少地匹配,同时保持整个事情合法。
.*
.*?
而不是.*使用[^\\)]*
[^\\)]*
尝试这个:
Pattern pat = Pattern.compile("\\#[^\\)]+\\)");