删除连字符并替换为空格并使用液体

时间:2014-02-17 07:40:46

标签: regex shopify liquid

使用液体,我使用产品标签来生成页面标题。我希望页面标题不含连字符,每个单词都大写。

实施例

如果标签(用于生成标题)是“薯片”。我希望标题是“薯片”。

如果我使用:

{{current_tags.first}}

它产生了“薯片”的标题。

如果我使用:

{{current_tags.first | replace: '-', ' '}}

它产生了“薯片”的称号。

如果我使用

{{current_tags.first | replace: '-', ' ' | capitalize}}

我们获得了“薯片”的称号。

如果有人知道如何获得“薯片”这个标题,那就太棒了。

如果重要,一些标签(用于生成标题)是“单词”;有些是“单词”;有些是“单词单词”;等等。

感谢。

3 个答案:

答案 0 :(得分:5)

你可以在' - '上拆分标签,然后循环翻译每个标签:

  {% assign words = current_tags.first | split: '-' %}
  {% for word in words %}{{ word | capitalize }} {% endfor %}  

答案 1 :(得分:1)

According to the docscamelize(或camelcase)过滤器应该有效:

  

<强> camelize

     

将文本转换为CamelCase。

     

<强>输入

     

{{'即将来临'| camelcase}}

     

<强> Ouptut

     

即将推出

但是当我测试它时,我发现过滤器似乎没有像doco所说的那样添加空间。

在这种情况下,BBG's answer是我将使用的解决方法(拆分为' - '并将数组中的每个单词大写)。

答案 2 :(得分:0)

如果使用 CSS 是一种选择,我只会这样做,而不是在 Liquid 中处理拆分和循环。

<span style="text-transform: capitalize">
  {{current_tags.first | replace: '-', ' '}}
</span>