truncate 将字符串缩短到特定字符数并在后面添加自定义省略号

将字符串缩短到指定数量的字符。
如果字符串的长度超过指定数量,会在末尾追加省略号(…),并且省略号本身也包含在字符数中。

输入

{{ "Ground control to Major Tom." | truncate: 20 }}

输出

Ground control to...

自定义省略号

truncate 可以接受一个可选的第二个参数,用来指定截断后要追加的字符序列。默认是省略号(…),但你可以自定义为其他字符。

第二个参数的长度会被计算在第一个参数指定的字符总数里。
比如,如果你想让截断后的字符串总长度为 10 个字符,并且使用一个 3 个字符长的省略号,那么第一个参数就需要设置为 13,因为省略号也算进了总字符数。

输入

{{ "Ground control to Major Tom." | truncate: 25, ", and so on" }}

输出

Ground control, and so on

中文+英文

在如果字符串是中文,一个字会被视为一个字符,英文依然一个字母被视为一个字符,空格也会被视为一个字符

输入

{{ "我喜欢 JekyllDo 的风格" | truncate: 15, "😘😘😘" }}

输出

我喜欢 JekyllDo😘😘😘

不使用省略号

如果想要严格截断到指定的字符数,并且不想在末尾加任何字符,可以将第二个参数设置为空字符串。

输入

{{ "Ground control to Major Tom." | truncate: 20, "" }}

输出

Ground control to Ma