我正在清理很多markdown文件以將它們導入Pelican(一個靜態網站生成器)。編譯時,我得到有關多個文件中日期格式的錯誤。我需要做的是保留日期(yyyy-mm-dd)並刪除它後面的行尾。這是最後一次嘗試,我用sed
和正則表達式製作:在匹配正則表達式之後刪除文件結尾保持多個文件中匹配的表達式(sed?)
sed -i "s/\(\d{4}-\d{2}-\d{2}\)\*/\1 /g" *.md
我的希望是,SED將採取括號內的整個圖案爲1
,然後把它作爲替換字符串。
這是錯誤的例子(所有的數字變化):
ERROR: Could not process ./2010-12-28-the-open-internet-a-case-for-net-neutrality.html.md
| ValueError: '2010-12-28 21:22:00.000000000 +01:00 true' is not a valid date
ERROR: Could not process ./2011-05-27-two-one-must-read-internet-business-book.html.md
| ValueError: '2011-05-27 13:08:00.000000000 +02:00 true' is not a valid date
我環顧四周左右,但所有我發現是關於靜態字符串,而我總是在變化。
感謝您的幫助。
也參見https://unix.stackexchange.com/questions/119905/why-does-my-regular -expression-work-in-x-but-in-y – Sundeep
很好的參考文章,謝謝@sundeep –