为什么 Jekyll's Liquid 'contains' returns 是一个字符串?
Why Jekyll's Liquid 'contains' returns a string?
我尝试根据一个字符串是否包含另一个字符串来为变量分配 true
或 false
值。我使用以下代码:
{% assign external_link = link.href contains '://' %}
对于此代码段,external_link
的值将与 link.href
的值相同(我使用命令 [=19= 检查了 external_link
的值]).
即使我在右边加上括号,我也会得到相同的结果:
{% assign external_link = (link.href contains '://') %}
有什么问题,我怎样才能得到 contains
表达式的 true
/false
结果?
您可以使用 capture 过滤器标签获取 contains
标签的结果:
{% assign link = "http://example.com "%}
{% capture has_link %}{% if link contains '://' %}Yes{% else %}No{% endif %}{% endcapture%}
{{has_link}}
{% assign link = "example.com "%}
{% capture has_link %}{% if link contains '://' %}Yes{% else %}No{% endif %}{% endcapture%}
{{has_link}}
另一个选项没有capture
{% assign link = "http://example.com "%}
{% if link contains '://' %}
{% assign has_link = "yes" %}
{% else %}
{% assign has_link = "no" %}
{% endif %}
{{has_link}}
{% assign link = "example.com "%}
{% if link contains '://' %}
{% assign has_link = "yes" %}
{% else %}
{% assign has_link = "no" %}
{% endif %}
{{has_link}}
输出:
yes
no
我尝试根据一个字符串是否包含另一个字符串来为变量分配 true
或 false
值。我使用以下代码:
{% assign external_link = link.href contains '://' %}
对于此代码段,external_link
的值将与 link.href
的值相同(我使用命令 [=19= 检查了 external_link
的值]).
即使我在右边加上括号,我也会得到相同的结果:
{% assign external_link = (link.href contains '://') %}
有什么问题,我怎样才能得到 contains
表达式的 true
/false
结果?
您可以使用 capture 过滤器标签获取 contains
标签的结果:
{% assign link = "http://example.com "%}
{% capture has_link %}{% if link contains '://' %}Yes{% else %}No{% endif %}{% endcapture%}
{{has_link}}
{% assign link = "example.com "%}
{% capture has_link %}{% if link contains '://' %}Yes{% else %}No{% endif %}{% endcapture%}
{{has_link}}
另一个选项没有capture
{% assign link = "http://example.com "%}
{% if link contains '://' %}
{% assign has_link = "yes" %}
{% else %}
{% assign has_link = "no" %}
{% endif %}
{{has_link}}
{% assign link = "example.com "%}
{% if link contains '://' %}
{% assign has_link = "yes" %}
{% else %}
{% assign has_link = "no" %}
{% endif %}
{{has_link}}
输出:
yes
no