文字列があれば、その中のすべてのリンクをリンクの説明に置き換えたいと思います。、どうすればreplace-regexp-in-stringを正しく使うことができますか?
\\[\\[[^\\[]+\\]\\[[^\\[]+\\]\\]
これは私の関数である:
たとえば、私はthis is a description
私はリンクのために、この正規表現を構築するために再ビルダーを使用を返したい
this is a [[http://link][description]]
を与えられました
(defun flatten-string-with-links (string)
(replace-regexp-in-string "\\[\\[[^\\[]+\\]\\[[^\\[]+\\]\\]"
(lambda(s) (nth 2 (split-string s "[\]\[]+"))) string))
th正規表現全体のシーケンスは、末尾の "]]"だけを置き換えます。これは、それが生成するものです:
this is a [[http://link][descriptiondescription
私は何がうまくいけないのか分かりません。どんな助けでも大歓迎です。
更新日:リンクの正規表現が改善されました。それは質問には関係ありませんが、もし誰かがそれをコピーしようとすると、より良いバージョンを得ることができるでしょう。