Emacs Part 42
■ このスレッドは過去ログ倉庫に格納されています
0685名無しさん@お腹いっぱい。
2013/03/20(水) 18:43:57.06value に格納されている文字列
"hogehoge 'abc' 1112 'def'999 'ghi'"
でクオーテーションで囲まれている部分を$(数字) で置き換えて
"hogehoge $(0) 1112 $(1)999 $(2)"
という風にしたいのですが
"hogehoge $(0) 1112 $(0)999 $(0)"
となってしまいうまくいきません
(let* (
(value "hogehoge 'abc' 1112 'def'999 'ghi'")
(pattern "\\('[^']*'\\)")
(eval-value value)
)
(setq eval-value (replace-regexp-in-string pattern (format "$(%d)" 0) eval-value nil nil 1))
(setq eval-value (replace-regexp-in-string pattern (format "$(%d)" 1) eval-value nil nil 1))
(setq eval-value (replace-regexp-in-string pattern (format "$(%d)" 2) eval-value nil nil 1))
)
1回目のreplace〜で全て$(0)になってしまい、引数が↓のときとおなじ結果になってしまいます。
(replace-regexp-in-string pattern (format "$(%d)" 0) eval-value)
これってどうすればいいんでしょうか?
■ このスレッドは過去ログ倉庫に格納されています