javascript - 为 url 清漆正则表达式
问题描述
在创建 vcl 规则以缓存特定页面时需要帮助。询问是 url 是否包含
/order/{x}/{y}
缓存它(现在 x 和 y 是可能包含字母数字和特殊字符的随机字符串)
不要缓存下面的任何内容
/order/{x}
/order/{x}/{y}/{z}
/order/{x}/{y}/{z}/.../{n}
谢谢你看。
解决方案
var rgx = /order\/((?:[\x00-\xFF](?!\/))+[^/])\/((?:[\x00-\xFF](?!\/))+[^/])\s*$/gi;
rgx.test("/order/{x}/{y}");//true
rgx.test("/order/{x}");//false
rgx.test("/order/{x}/{y}/{z}");//false
rgx.test("/order/{x}/{y}/{z}/{t}");//false
组也被捕获:
var exec = rgx.exec("order/{x}/{y}");
exec[1];//"{x}"
exec[2];//"{y}"
推荐阅读
- reactjs - 使用 setState 和 redux 操作时如何避免重复的 render() 调用
- java - 如何将我的测试结果从 selenium 发送到 testrail
- jquery - 如何在创建它的函数之外获取包含 unicode 的字符串变量的值?
- mysql - sql 除了like查询
- kotlin - 如何在 Kotlin 中导入类型扩展函数
- powershell - 如何将 Outlook Web 加载项安装到 Exchange Server 2013 中的通讯组?
- yarnpkg - 什么是“私人”标志纱线初始化?
- ruby-on-rails - 如何在 Rails 的索引页面中列出关联字段的所有实例
- ubuntu - systemd 服务文件执行命令失败:权限被拒绝
- python-3.x - 如何按检查对象对 QStandardItemModel 和 QListView 进行排序?