Common Lispの外部ライブラリについてのまとめ


 Common Lisp 1年目です。
 Common Lispにはいろいろな外部ライブラリがあるので、そのいくつかについて簡単にまとめてみました。 (完成が遅れました、ライブラリを増やしてく予定です。)

cl-ppcre

 正規表現関連のライブラリです。 Perl を使ってるっぽいです。

;ロード
(ql:quickload :cl-ppcre)

分割

 cl-ppcre:split は文字列を分割してリストにして返します

;(cl-ppcre:split 正規表現 分割される文字列)

(cl-ppcre:split " " "Hello World")
;=> ("Hello" "World")

(cl-ppcre:split " " "  a") 
;>("" "" "a")
;分割する文字が複数あると、空文字がリストに含まれます

(cl-ppcre:split "," "a,b,c,")
;=>("a" "b" "c")

(cl-ppcre:split "[,.]" "a,b.c,d,e.f")
;=>("a" "b" "c" "d" "e" "f")
;正規表現で分割

置換

 正規表現で置換をします。

(cl-ppcre:regex-replace-all 置換前 文字列 置換後)

(cl-ppcre:regex-replace-all "[,.]" "a,b.c,d.e,f,g" " ")
;=>"a b c d e f g"

(cl-ppcre:regex-replace 置換前 文字列 置換後)
;最初のだけ置換します。

(cl-ppcre:regex-replace "[,.]" "a,b.c,d.e,f,g" " ")
;=>"a b.c,d.e,f,g"

詳細

manifest

 入ってるライブラリのドキュメントなどをブラウザで表示します。

(manifest:start) 
;=>"http://localhost:34603/"
;かえってきた URL にブラウザからアクセスするとドキュメントを見ることができます。

(manifest:stop)
;終了

↓スクリーンショット

http://localhost:34603/quicklisp のように、先程のURLの最後に quicklisp をつけると、 quicklisp のパッケージを管理することができます。

詳細

終わりに

 ずっと寝てたら、アドベントカレンダーの期限が今日だったことを忘れてしまって...未完成のまま公開されてしまったので恥ずかしい思いをしてしまいました。まだ、載せたライブラリの数も少ないので、少しずつ増やしていきたいと思います。