Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
1
Help us understand the problem. What are the problem?

posted at

updated at

Organization

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

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

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

詳細

終わりに

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

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
1
Help us understand the problem. What are the problem?