在Java中,我只想用xyz
替换最后一次出现的/
之后出现的{id}
或{objId}
或{anything else}
模式。
输入:
/test/data/{id}/moreData/{id}
/test/data/{id}/moreData/{objId}
/test/data/{id}/moreData/{anything else}
预期输出:
/test/data/{id}/moreData/xyz
/test/data/{id}/moreData/xyz
/test/data/{id}/moreData/xyz
请建议一个正则表达式。
1条答案
按热度按时间mutmk8jj1#
正如注解中所阐明的,您似乎希望替换出现在斜杠
/
之后的最后一个占位符。为此,您可以使用以下正则表达式:这里,
[^/]
是一个取反字符类,它捕获除斜杠/
之外的任何字符,+
表示一个或多个字符,$
表示字符串的结尾,这将确保它将匹配任何出现在不包含/
的字符串结尾的文本。因此,只需使用它匹配并替换为xyz
或您选择的任何字符串。Demo
Java代码
指纹