Java Regex ReplaceAll在范围内->;字符串X上的String.replaceAll()在(不包括)一些字符Y之后~>;直到(包括)案例结束忽略字符串Z

Java Regex ReplaceAll在范围内->;字符串X上的String.replaceAll()在(不包括)一些字符Y之后~>;直到(包括)案例结束忽略字符串Z,java,regex,substring,match,replaceall,Java,Regex,Substring,Match,Replaceall,我试图用(?I) 例如: 输入 u:sdneUSER|r:endsUser(&g:againuser) u:root|r:root(&g:root) 替换所有: sdneUSER -> root endsUser -> root againuser -> root 预期输出: u:root|r:root(&g:root) 参考: 忽略大小写您可以将此正则表达式:.*(?=[^a-zA-Z]+)与replaceAll一起使用,如下所示: Strin

我试图用
(?I)

例如:

输入

u:sdneUSER|r:endsUser(&g:againuser)
u:root|r:root(&g:root)
替换所有:

sdneUSER -> root
endsUser -> root
againuser -> root
预期输出:

u:root|r:root(&g:root)
参考:


忽略大小写

您可以将此正则表达式
:.*(?=[^a-zA-Z]+)
与replaceAll一起使用,如下所示:

String text = "u:sdneUSER|r:endsUser(&g:againuser)";
text = text.replaceAll(":.*?(?=[^a-zA-Z]+)", ":root");
输出

u:sdneUSER|r:endsUser(&g:againuser)
u:root|r:root(&g:root)


您至少应该尝试您的问题只包含要求-这并不表示您方面为自己解决此问题所做的任何努力。请添加您对此问题的尝试-因为此网站不是免费的“我们为您(家庭)工作”服务。除此之外:请转到第页了解如何/问什么。谢谢,请展示你所尝试过的。这个网站在帮助你改进你所做的工作方面很好,但在为你做这些工作方面却不是很好。