邏輯運算
Hugo 可以自訂頁面顯示不同的資料,所以可以根據頁面的邏輯不同去顯示不同的資料,在設計樣板時可以透過這個邏輯去做資料的運算及顯示處理
字串處理
replace 取代
replace INPUT OLD NEW [LIMIT]
replace (原始字串) (搜尋的字串) (取代的字串) [最多取代次數]
<!-- 將 o 取代成 u,最多取代 2 次 -->
{{ replace "hugo hugo hugo" "o" "u" 2 }}
<!-- 結果: "hugu hugu hugo" -->
len 字串長度
len INPUT
len (原始字串)
<!-- 計算字串 "hugo" 長度 -->
{{ len "hugo" }}
<!-- 結果: 4 -->
split 透過指定字元拆解字串成陣列
split STRING DELIM
split (原始字串) (指定拆解字元)
<!-- 將字串「tag1,tag2,tag3」透過「,」字元拆解成陣列 -->
{{split "tag1,tag2,tag3" "," }}
<!-- 結果: ["tag1" "tag2" "tag3"] -->
slice 將指定資料轉換成陣列
slice ITEM…
slice (資料列…)
<!-- 將「"hugo" "static" "site" "generator"」字串資料列轉換成陣列 -->
{{ slice "hugo" "static" "site" "generator") }}
<!-- 結果: [hugo static site generator] -->
比較
lt 小於
lt INTEGER_1 INTEGER_2
lt (整數1) (整數2)
<!-- 列印 true (i.e., 1 小於 2 為 true) -->
{{ lt 1 2 }}
ge 大於等於
gt INTEGER_1 INTEGER_2
gt (整數1) (整數2)
<!-- 列印 true (i.e., 10 大於 5 為 true) -->
{{ if ge 10 5 }}true{{ end }}
Math 數學運算
add 加法
add INTEGER_1 INTEGER_2
add (整數1) (整數2)
<!-- 1 + 2 = 3 -->
{{add 1 2}}
sub 減法
sub INTEGER_1 INTEGER_2
sub (整數1) (整數2)
<!-- 3 - 2 = 1 -->
{{sub 3 2}}
mul 乘法
mul INTEGER_1 INTEGER_2
mul (整數1) (整數2)
<!-- 2 x 3 = 6 -->
{{mul 2 3}}
div 除法
div INTEGER_1 INTEGER_2
div (整數1) (整數2)
<!-- 6 / 3 = 2 -->
{{div 6 3}}