gpt4 book ai didi

java - 替换某些符号之间的文本

转载 作者:行者123 更新时间:2023-12-01 23:15:28 24 4
gpt4 key购买 nike

我得到了一个像这样的字符串:CSF@asomedatahere@iiwin@hnotwhatIwant

我想替换 @i 和 @h 之间存在的字符串(h 可以是任何字符)。这是我到目前为止所拥有的,我觉得我很接近,但是,在这个 @idata 模式之后可能并不总是有一个 @CHAR。

 (?<=@i)(.*)(?=@.*)

我希望它能在不存在的情况下工作。正如在下面的链接中可以看到的,它适用于第一种情况,而不是第二种情况。我尝试添加一个“?”最后使最后一部分成为可选,但这使得它不适用于第一种情况。

这里有一个链接,可以主动向您显示哪些功能不起作用:http://fiddle.re/vtvmc

最佳答案

您需要扩展前瞻以使用输入的结尾:

(?<=@i)(.*?)(?=@.*|$)

这会匹配

  • iwin@hnotwhatIwantCSF@asomedatahere@iiwin@hnotwhatIwant
  • iwin@hCSF@asomedatahere@iiwin@h
  • iwin,位于 CSF@asomedatahere@iiwin

关于java - 替换某些符号之间的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21285069/

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