java - 正则表达式验证 URI 中的参数
问题描述
我正在尝试使用正则表达式验证系统的 URI,以识别 REST API 的 URI 中间的参数,但是,我在 URI 末尾遇到参数验证问题,例如:
在数据库中,我得到了 URI 的规则:/uaa/api/users/*/city/*
将“*”替换为正则表达式,使其接受 / 之间或 / 之后的任何字符:^/uaa/api/users/+(.*)+/city/+(.*)$
我将带有正则表达式的 URI 与请求 URI 进行比较:/uaa/api/users/john.connor/city/12
但是,如果我删除 URI 末尾的值并只留下 / 它接受我需要它失败,因为 / 之后没有值,也就是说,当使用^/uaa/api/users/+(.*)+/city/+(.*)$
带有/uaa/api/users/john.connor/city/
URI 的正则表达式时,我需要它失败,因为/之后没有任何价值。我该怎么做才能让他不接受最后跟随的毫无价值的酒吧?
我不知道这是否重要,但我在 Java 中使用正则表达式!
解决方案
推荐阅读
- c - 在 C 中每第 n 列 (K&R 1-22) 折叠输入行
- linux - 如何将命令的输出(输出是数字)与数字进行比较?尝试查看输出是否大于等于1
- rust - 如何解决 HRTB 错误?
- javascript - 在 Vue.js 中转换数组数组
- hyperledger-fabric - 无法读取超级账本作曲家中未定义的属性“getModelManager”
- linux - 将特定行复制并附加到具有特定名称格式的文件中?
- ios - 将日历格鲁吉亚语更改为波斯语时,无法强制将“NSLocale”类型的值转换为“Locale”类型
- c# - 移动应用程序和 Web 应用程序 API 命中
- javascript - .on 事件未启用点击事件
- iis-8.5 - IIS中的网页很慢