Liquid模板JSON转换:空格拆分全名成首/LastName失败求助
解决Liquid模板全名拆分失效的问题
你的代码存在引号嵌套语法错误,导致split函数未正常执行:在"{{ record.Name | split: " " | last}}"这一行中,外层已用双引号包裹字符串,内部空格分隔符再用双引号会触发解析错误,需替换为单引号。
同时建议统一使用提前赋值的names变量获取姓氏,避免重复调用split,让代码更简洁。
修正后的代码如下:
[ {%- for record in content -%} {%- assign names = record.Name | split: ' ' -%} { "First Name": "{{ names[0] }}", "Last Name": "{{ names.last }}", "Personal Email": "{{ record['Personal Email'] }}", "Project Manager": "{{ record['Project Manager'] }}" }{% if forloop.last == false %},{% endif %} {%- endfor -%} ]
额外说明
如果全名包含多个空格(如带中间名),上述代码会将第一个空格前的内容作为名字,最后一个空格后的内容作为姓氏。若需将第一个词作为名,剩余所有内容作为姓,可改用以下方式获取姓氏:
"Last Name": "{{ record.Name | remove_first: names[0] | strip }}"
内容的提问来源于stack exchange,提问作者Pradeep Kumar
相关产品推荐
相关产品推荐

