jquery - jQuery 正则表达式替换和切换
问题描述
我正在尝试制作一个 jQuery 替换功能,但似乎无法弄清楚。正则表达式不是我的强项。希望这里有人可以提供帮助。
我需要更改以下内容:
http://localhost/webshop/page/2/?_categories=music
至:
http://localhost/webshop/?_categories=music&_paged=2
到目前为止,这就是我所拥有的:
string.replace(/\/page\/([0-9].*?)\//, /&_paged=$1/);
这只是产生:
http://localhost/webshop/&_paged=2/?_categories=music
我需要某种前后锚来切换事物。我尝试了各种配置,但就是想不通。我阅读了各种帖子,但无法理解所有这些破折号和符号。有正则表达式专家吗?任何帮助将非常感激。
解决方案
你可以在你的正则表达式中有多个组。只需使用它们。你快到了
'http://localhost/webshop/page/2/?_categories=music'
.replace(/^(.+\/webshop)\/page\/(\d+)\/(.+)$/, '$1/$3&_paged=$2')
这将产生您正在寻找的确切字符串 - http://localhost/webshop/?_categories=music&_paged=2
推荐阅读
- python - 散景:绘制大型数据集
- python - 将 indexError 交换为例如。0 在写入行到 csv
- typescript - 如何在打字稿中强制执行类型歧视?
- javascript - 将 csv 文件添加到 webpack 构建
- javascript - 从 AmCharts 获取范围值
- python - 检查输入时出错:预期的 dense_input 的形状为 (21,) 但得到的数组的形状为 (1,)
- ios - 在 Swift 4.2 中观察不会被触发
- sql - 带有 Where 子句的 SQL Left Join 查询从第一个表中删除一些行
- c - struct内存分配,内存分配应该是4的倍数
- python - 气流网络服务器未从 1.10 开始