我想捕获一个不带下划线的字母数字组

我想在正则表达式中捕获一个字母数字组,这样它就不会捕获起始下划线。例如_reverse(abc)应该返回reverse(. 我正在使用(?<name>\w+)但它return _reverse(



慕标5832272
浏览 94回答 3
3回答

白衣染霜花

你可以试试这个,[^a-zA-Z0-9()\\s+]输出将是reverse(abc)

跃然一笑

您可以明确指定字符,例如:[a-zA-Z0-9]+

守着星空守着你

根据您所展示的内容,我假设您想要去除左括号后面的下划线和内容。基本上,这应该&nbsp;与这样的正则表达式一起使用:"_([a-zA-Z0-9]+\()"这可以与 a 结合使用Matcher以提取所有捕获组(在本例中为[a-zA-Z0-9]+\()并返回它们。请注意,您几乎可以在RegEx 101和RegEx Per等实用网站上找到正则表达式所需的所有帮助,后者是一个不错的可视化工具,但只能使用javaScript-like 表达式。此外,RegEx 101 包含一个 Regex 调试器,以帮助避免危险的正则表达式
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java