扫码关注官方订阅号
有个url:/result/last/location/{locationId}/*如何通过 HttpServletRequest 用正则表达式把 {locationId} 中内容获取到求教!!!!谢谢!!!!!
你可以通过 spring的注解@PathVariable来获得locationId
public Result method(@PathVariable String locationId)
你也可以通过string 的split来截取
public class Test{ public static void main(String[] args){ String url = "/result/last/location/{locationId}/*"; String result = getStr(url,"location"); System.out.println(result); } public static String getStr(String url,String key){ if(url == null || key == null){ return ""; } String[] strs = url.split("/"); for(int i=0;i<strs.length;i++){ if(strs[i].equals(key)&&i<strs.length-1){ return strs[i+1]; } } return ""; } }
"{[}]"提取括号的内容的正则你试试看
@PathVariable 是比较好的方式
String str = "/result/last/location/{locationId}/*";
String regex = "/\\{(\\w+)\\}/\\*"; Pattern p = Pattern.compile(regex); Matcher m = p.matcher(str); while(m.find()){ System.out.println(m.group()); }
不知道这样符不符合你的要求
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
你可以通过 spring的注解@PathVariable来获得locationId
你也可以通过string 的split来截取
"{[}]"
提取括号的内容的正则你试试看
@PathVariable 是比较好的方式
String str = "/result/last/location/{locationId}/*";
不知道这样符不符合你的要求