首页 > Java > java教程 > 如何在 Java 中使用正则表达式查找括号外的逗号?

如何在 Java 中使用正则表达式查找括号外的逗号?

Barbara Streisand
发布: 2024-11-12 09:21:02
原创
363 人浏览过

How to Find Commas Outside Parentheses Using Regex in Java?

使用正则表达式匹配括号外的逗号

匹配文本中的特定模式是编程中的一项常见任务,特别是在处理文本文件或用户时输入。在本例中,目标是查找字符串中未括在括号内的所有逗号。

使用 Java 正则表达式,可以制作正则表达式模式来实现这一目标。提供的正则表达式为:

Pattern regex = Pattern.compile(
    ",         # Match a comma\n" +
    "(?!       # only if it's not followed by...\n" +
    " [^(]*    #   any number of characters except opening parens\n" +
    " \)      #   followed by a closing parens\n" +
    ")         # End of lookahead", 
    Pattern.COMMENTS);
登录后复制

此模式分解如下:

  • ",匹配逗号。
  • (?! 启动否定前瞻断言.
  • [^(]* 匹配除左括号之外的任意数量的字符。
  • \) 匹配右括号。
  • ) 结束否定先行断言。

负向先行确保当前逗号后面不跟右括号,这有效地排除了括号内的逗号。

在 Java 中,Pattern 类可用于编译和匹配正则表达式模式。然后,编译后的模式可用于识别输入字符串中的匹配子字符串。

示例用法:

String input = "12,44,foo,bar,(23,45,200),6";
Matcher matcher = regex.matcher(input);
while (matcher.find()) {
    System.out.println(matcher.group());
}
登录后复制

此代码将打印不在括号内的逗号,如指定的正则表达式:

,
,
,
登录后复制

以上是如何在 Java 中使用正则表达式查找括号外的逗号?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板