【问题标题】:RegEx: Getting Shopify handle from URL正则表达式:从 URL 获取 Shopify 句柄
【发布时间】:2020-01-23 13:34:05
【问题描述】:

https://store.myshopify.com/products/burton-custom-freestyle-151

https://store.myshopify.com/products/burton-custom-freestyle-151?variant=31722273144379

从上面:我想输出:burton-custom-freestyle-151

我得到了以下正则表达式: [^/]*(?=\?) 但仅适用于第二个链接。

【问题讨论】:

  • 你也可以使用捕获组^.*/([^?\s]+)regex101.com/r/UsXAnc/1(?<=/)[^/?\s]+(?=\?|$)
  • (?=\?) 表示 *if 后跟一个字面问号“。你显然没有在第一个 URL 中。你真的需要阐明你的要求;一个不起作用的例子是对它应该如何工作的指导很差。

标签: regex shopify


【解决方案1】:

尝试以下方法:

(?<=products\/)((?!\?|\$).)+

【讨论】:

【解决方案2】:

如果您有权访问 Shopify 商店的模板 .liquid 文件,则可以使用 {{ page.title }}{{ page.handle }} 查看具体产品 (docs)。

或者{{ page.id }}在用户更改产品页面标题时不会改变。

如果您从 Python 或 Node 后端抓取网页,还可以使用 URL 解析器(分别为urlparseurl)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-11
    • 2011-03-27
    • 1970-01-01
    • 1970-01-01
    • 2021-06-08
    • 1970-01-01
    相关资源
    最近更新 更多