java url匹配算法,没有现成可否给个思路,多谢各位大神

t_mac1989 2014-12-08 08:20:08
求一个url匹配算法,类似@RequestMapping一样的效果

如:
www/{userId}/getInfo 和 www/123/getInfo 匹配,和www/123不匹配
www/{userId}-{id}/{xxx}/getInfo 和www/123-23/abc/getInfo 匹配,和www/123/asd/getInfo 不匹配
www/{userId}/* 和www/123/abc 匹配,和www/123/abc/a 不匹配


如果没有现成的算法,但求一个思路,多谢各位

...全文
487 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
wyx100 2014-12-11
  • 打赏
  • 举报
回复
引用 5 楼 sca4441479 的回复:
使用正则表达式就OK 只写第一个,其余楼主举一反三
final String REGEX="www/(\\d+)/getInfo";
t_mac1989 2014-12-11
  • 打赏
  • 举报
回复
没有更加直观的思路嘛
t_mac1989 2014-12-10
  • 打赏
  • 举报
回复
还是不清楚
sunbo624 2014-12-10
  • 打赏
  • 举报
回复
你看一下.net mvc2的路由吧 然后就清楚了
冥王之锤 2014-12-09
  • 打赏
  • 举报
回复
根据 www/{userId}/getInfo 生产正则表达式,再去匹配 www/123/getInfo , www/123。 动态生产正则表达式是难点。 上面就要生产N个正则表达式,首先要知道{userId}都有哪些,每个userid都会生产一个正则表达式,每个都去匹配一下 www/123/getInfo ,成功则匹配结束。否则失败。 其他思路差不多。
tony4geek 2014-12-09
  • 打赏
  • 举报
回复
试试正则匹配了。
zy_think123 2014-12-09
  • 打赏
  • 举报
回复
只有使用正则表达式了
t_mac1989 2014-12-09
  • 打赏
  • 举报
回复
可能写死正则的,如果我有一万个模板,就写一万个正则嘛?
sca4441479 2014-12-09
  • 打赏
  • 举报
回复
使用正则表达式就OK 只写第一个,其余楼主举一反三
final String REGEX="www/(\\d+)/getInfo";
t_mac1989 2014-12-09
  • 打赏
  • 举报
回复
动态生产正则表达式?这个没有试过

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧