gpt4 book ai didi

java - 如何使用正则表达式在字符串中的 [ 和 ] 内获得匹配

转载 作者:行者123 更新时间:2023-12-02 06:30:47 26 4
gpt4 key购买 nike

我需要获取方括号[]内的匹配字符串。

例如,在像 "[***]qwerty" 这样的字符串输入中,我应该得到 "***" 字符串的匹配。

我徒劳地使用的正则表达式是“\\[(.+)\\]”

我的Java代码如下:

Pattern pattern = Pattern.compile(regex_custom_delimiter_pattern); //see regex above
Matcher matcher = pattern.matcher("[***]qwerty");
String delimiter = null;
if (matcher.find()) {
delimiter = matcher.group(0);
}

感谢任何帮助..想知道我使用的正则表达式中缺少什么:(

最佳答案

这应该可以正常工作,但如果 [] 之间的值不包含 [] 字面意思:

\\[([^\\]]+)]

或者如果该值可以包含 [] 则:

\\[(.+?)\\]

此外,您的主要问题是您正在获取组 0 matcher.group(0) 这是整个匹配,您的值存储在组 1 中,因此您需要 matcher.group( 1).

关于java - 如何使用正则表达式在字符串中的 [ 和 ] 内获得匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20075855/

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