首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

要在常见的lisp中列出没有#\的字符串

在常见的Lisp方言中,可以通过以下方式列出没有#\的字符串:

  1. 使用remove-if函数结合char= #\#来过滤掉含有字符#的字符串。例如,在Common Lisp中可以这样写:
代码语言:lisp
复制
(remove-if (lambda (c) (char= c #\#)) '("string1" "string2" "str#ing3"))

这将返回一个列表,其中只包含没有#字符的字符串。

  1. 使用loop宏和collect子句来收集没有#字符的字符串。例如,在Clojure中可以这样写:
代码语言:lisp
复制
(loop [strings '("string1" "string2" "str#ing3")
       result []]
  (if (empty? strings)
    result
    (recur (rest strings)
           (if (not (some #(= % \#) (first strings)))
             (conj result (first strings))
             result))))

这将返回一个向量,其中只包含没有#字符的字符串。

无论使用哪种方法,都可以得到一个不包含#字符的字符串列表或向量。这在处理字符串时非常有用,特别是当需要过滤掉特定字符时。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券