sed を使って `\caption[すべての長さのテキスト]{一部のテキスト}` を `\caption{一部のテキスト}` に置き換えます。

sed を使って `\caption[すべての長さのテキスト]{一部のテキスト}` を `\caption{一部のテキスト}` に置き換えます。

拒否でエラーが見つかりません。何かが欠けているようです。これについての指示があればよさそうです。

\caption[any leng of text]{some text}[]を外して以下を接続してみました。\caption{some text}

私のsedコマンドは次のとおりです

sed -i -e 's/caption\(\[[^]\]*\)/caption/g'  

ただし、次のような誤った結果が表示されます。

diff --git a/sections/chap_1.tex b/sections/chap_1.tex
index 3eeaa87..5575b76 100644
--- a/sections/chap_1.tex
+++ b/sections/chap_1.tex
@@ -10,7 +10,7 @@ un sistema di drenaggio parallelo a quello venoso\cite{BOOK1}.\\
     \begin{center}
     \includegraphics[width=0.9\columnwidth]{img/ANATOMY2.jpeg}
     \end{center}
-    \caption[Anatomia del sistema linfatico, vasi sanguigni e linfatici]{Anatomia del sistema linfatico, vasi sanguigni e linfatici
+    \caption]{Anatomia del sistema linfatico, vasi sanguigni e linfatici
     \cite{img1}}

誰もが私が間違っていることを明確にすることができますか?

ベストアンサー1

sed -i -e 's/caption\[[^]]*\]/caption/g'

「caption」で始まり、後に「[」が続く文字列を探します。その後、「]」以外の記号が0個以上あります。続いて「]」。

文字列全体を「タイトル」に置き換えます。

おすすめ記事