Emacs Part 44
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2013/12/14(土) 17:36:04.45GNU Emacs - GNU Project - Free Software Foundation (FSF)
https://www.gnu.org/software/emacs/
EmacsWiki: サイトマップ
http://www.emacswiki.org/emacs/
前スレ
Emacs Part 43
http://toro.2ch.net/test/read.cgi/unix/1370754332/
0002名無しさん@お腹いっぱい。
2013/12/14(土) 19:16:51.50imaxima,
gnuplot,
reduce,
octave,
sage,
macaulay2,
mathematica
が動く様になった
幸せ〜
0003名無しさん@お腹いっぱい。
2013/12/14(土) 22:37:52.920004名無しさん@お腹いっぱい。
2013/12/15(日) 16:35:33.84〜/ ・ ・\
( ∀ ) <ぼく、4ゲット君
\/\/\/\/
0005名無しさん@お腹いっぱい。
2013/12/15(日) 21:18:40.55(setq test "/*
/* test */
*/
foo
/*
foo
*/")
testの /* */ 内を取り除こうとして
(replace-regexp-in-string "/\\*\\(.\\|\n\\)+?\\*/" "" test)
と書いたら
*/
foo
と一部の */ が残ってしまいました。バックスラッシュの付け方に誤りがあるかと思いましたがよくわかりません。
0006名無しさん@お腹いっぱい。
2013/12/15(日) 21:44:42.98基本的に正規表現は入れ子に対応するのが難しい。
0007名無しさん@お腹いっぱい。
2013/12/16(月) 14:44:16.72(setq data1 '((1 . 1)(2 . 2)(3 . 3)))
(let ((data2 data1))
(setq data2 (delete (assoc 1 data2) data2)))
これは仕様なのでしょうか。
0008名無しさん@お腹いっぱい。
2013/12/16(月) 14:59:23.76delete はリストに対しては破壊的な操作を行うので仕様的に正しいです。
あとは、data2 に data1 の値を設定してるけど、リストの先頭の位置の値をコピーしてるだけなので
data2 の指すリスト自体を作り替えた場合 data1 が指してるリストも同じなので影響を受けます。
'((1 . 1) (2 . 2) (3 . 3)) に対して (1 . 1) の delete を行った場合、
'((1 . 1) . ((2 . 2) . ((3 . 3)))) の ((2 . 2) . ((3 . 3))) の部分が戻されるだけでリストは壊されず、
data1 は相変わらず先頭をさしたままなので何事も影響ないような感じになるけど
(2 . 2) とかの先頭じゃない部分の delete の場合、'((1 . 1) . ((3 . 3))) にリストが繋ぎ変えられるので。
0009名無しさん@お腹いっぱい。
2013/12/16(月) 15:30:51.34http://gyazo.com/c69385e8ce20446517901919c1977597.png
letしたからといってデータ構造までコピーされるわけではないよ
■ このスレッドは過去ログ倉庫に格納されています