開始我從Mendeley導出一個名爲.bib文件,其中標題條目用雙括號,如:sed的 - 雙進單括號如果符合模式
title = {{Nonparametric Permutation Tests for {\{PET{\}} functional Neuroimaging Experiments: A Primer with examples}},
我想用sed來檢查是否符合「稱號」開頭,如果是,以逗號之前刪除第一雙括號,最終的,導致:
title = {Nonparametric Permutation Tests for {\{PET{\}} functional Neuroimaging Experiments: A Primer with examples},
我知道有很好的文檔瞭解如何檢查各地對於起始模式,如何轉義元字符以及如何保存匹配以供稍後用於替代ution,但我沒有經驗與正則表達式和我嘗試迄今導致垃圾或錯誤(例如):
sed: 1: "/^title/s/\{\{[^]]*\}\} ...": RE error: invalid repetition count(s)
有誰知道這種替代問題的解決方案?
嘗試'sed的 「S/^ \(標題= \){{\([^ {] \ + \)}},$/\ 1 {\ 2},/克」 input.txt' – amdixon
這一個沒有工作.. – dangom
@dpgomez:你在使用GNU Sed嗎?你有沒有在''sed'命令行中加入'-r'? GNU'sed'確實使事情複雜化了,因爲(AFAIUI)試圖去判斷是否應該使用擴展的正則表達式,如果缺少'-r',並且在大括號構成匹配字符串的一部分的情況下,它實際上是肯定會猜錯。 –