gpt4 book ai didi

java - 为什么这个非贪婪的正则表达式比我想要的要多?

转载 作者:搜寻专家 更新时间:2023-11-01 03:58:45 25 4
gpt4 key购买 nike

我认为这应该返回“state,country”,但它返回的是“country”

System.out.println("city,state,country".replaceAll("(.*,)?", ""));

为什么它以这种方式工作,我如何让它返回“state,country”。我想要这个答案作为正则表达式。

最佳答案

  1. 如果你想制作.*非贪婪你需要添加 ?*之后.
  2. replaceAll将替换所有出现的匹配部分,因此您可能应该使用 replaceFirst

尝试

System.out.println("city,state,country".replaceFirst(".*?,", ""));

输出:

state,country

如果你不能使用replaceFirst需要留在replaceAll然后 @Reimeus answer可能是您正在寻找的。

关于java - 为什么这个非贪婪的正则表达式比我想要的要多?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16285661/

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