gpt4 book ai didi

java - 从正则表达式中排除括号内的字符串?

转载 作者:行者123 更新时间:2023-12-02 10:32:56 25 4
gpt4 key购买 nike

我希望将空格分隔的字符串拆分为一系列搜索词。但是,这样做时我想忽略括号内的空格。例如,我希望能够分割字符串

a, b, c, search:(1, 2, 3), d

进入

[[a] [b] [c] [search:(1, 2, 3)] [d]]

有人知道如何在 Java 中使用正则表达式来做到这一点吗?

谢谢!

最佳答案

这不是一个完整的正则表达式,但它会让你到达那里:

(\([^)]*\)|\S)*

这使用了一个常见的技巧,将一长串字符视为单个字符。在右侧,我们将非空白字符与 \S 匹配。在左侧,我们将一组平衡的括号与其之间的任何内容相匹配。

最终结果是一组平衡的括号被视为单个字符,因此正则表达式作为一个整体匹配单个单词,其中单词可以包含这些括号组。

(请注意,因为这是一个正则表达式,所以它无法处理嵌套括号。一组括号是限制。)

关于java - 从正则表达式中排除括号内的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3285510/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com