截断Racket中的字符串

时间:2015-08-17 22:37:22

标签: string format racket

是否有一种简单的方法可以在Racket中将字符串截断为特定宽度?

示例:

(truncate "foobar" 3)
-> "foo"
(truncate "foobar" 6)
-> "foobar"

我还想替换截断字符串的最后几个字符:

(truncate "foobar" 4 #:when-truncated "...")
-> "f..."
(truncate "foobar" 10 #:when-truncated "...")
-> "foobar"

1 个答案:

答案 0 :(得分:6)

您可以将~a功能与#:max-width#:limit-marker关键字一起使用来截断字符串。

例如:

(~a "foobar" #:max-width 4 #:limit-marker "...")

评估为"f..."

另一方面:

(~a "foo" #:max-width 4 #:limit-marker "...")

评估为"foo"

You can find the documentation for this function here.