3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

LispAdvent Calendar 2020

Day 20

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

Last updated at Posted at 2020-12-19

 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)
;終了

↓スクリーンショット
あ.png

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

詳細

終わりに

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

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?