如何修剪Common Lisp中的前导和尾随空格?

BnM*_*cGn 7 string common-lisp

如何修剪Common Lisp中的前导和尾随空格?

BnM*_*cGn 13

CL-USER> (string-trim 
      '(#\Space #\Newline #\Backspace #\Tab 
        #\Linefeed #\Page #\Return #\Rubout)
      "  A string   ")
"A string"
Run Code Online (Sandbox Code Playgroud)

string-left-trimstring-right-trim分别前后空白.

  • string-trim的第二个参数是一个字符包,它可以是一个序列.您可以考虑使用向量而不是列表来更好地访问.另外,你确定你有所有的空白字符吗?许多实现将包括沿whitespace-char-p行的函数.迭代字符代码并提前收集满足它的所有字符可能是值得的,并使用_that_作为空白字符序列. (2认同)