如何在字符串url中替换查询参数

use*_*230 3 java string url

你好,我有一个像url的字符串

http://example.com/foo/?bar=15&oof=myp
Run Code Online (Sandbox Code Playgroud)

现在假设我想将bar参数中的int值更改为16,以便拥有

http://example.com/foo/?bar=16&oof=myp
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?考虑到=后面的数字可能是1,2或3个字符.谢谢

ami*_*zer 6

您可以使用UriComponentsBuilder(它是Spring Web jar的一部分),如下所示:

String url = "http://example.com/foo/?bar=15&oof=myp";

UriComponentsBuilder urlBuilder = UriComponentsBuilder.fromUriString(url);

urlBuilder.replaceQueryParam("bar", 107);

String result = urlBuilder.build().toUriString();
Run Code Online (Sandbox Code Playgroud)

用你想要的数字代替107.使用此方法,您可以从urlBuilder获取URI或String对象.