gpt4 book ai didi

java - 如何提取URI中的路径参数值?

转载 作者:行者123 更新时间:2023-12-02 03:55:35 24 4
gpt4 key购买 nike

我想提取HttpServletRequest中的路径参数值

Sample URL:abc.api.com/learn/sections/{sectionId}/assignments/{assignmentId}

sectionString = Optional.ofNullable(request.getServletPath().split("/")[3]);

我尝试通过拆分 URI 路径来提取部分 id,但该 URI 可以更改。有人对此有可靠的解决方案吗?谢谢

最佳答案

假设 sectionId 始终出现在 sections 之后,您可以使用简单的正则表达式,例如

String uri = "abc.api.com/learn/sections/asdf-987/assignments/dsfwq98r7sdfg";
Matcher m = Pattern.compile(".*\\/sections\\/([a-zA-Z0-9-]+)(\\/?).*").matcher(uri);
if (m.matches()) {
System.out.println(m.group(1)); //asdf-987
}

(假设 UUID 的格式为 aaa-AAAA-9999)

您可以对 assignmentId 执行类似的操作,甚至可以在 1 个正则表达式中执行此操作

关于java - 如何提取URI中的路径参数值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35500965/

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