Grep 包含「1111-11-11」或「2382-21-20」的行。 (任何數字)

Grep 包含「1111-11-11」或「2382-21-20」的行。 (任何數字)

我嘗試過這樣做並且想出了這個

grep -E '\<[0-9]{4}"-"[0-9]{2}"-"[0-9]{2}\>'

它不起作用,原因是"-"多個 grep 東西,所以我嘗試用這樣的管道將它們分開

grep -E '\<[0-9]{4}-|[0-9]{2}-|[0-9]{2}\>'

但它仍然匹配類似4444、 或類似的行。有人知道如何實現我想要的嗎?

答案1

你過度引用了...

grep -E '\<[0-9]{4}-[0-9]{2}-[0-9]{2}\>'

答案2

喬奧關於引號是正確的,另外可以使它短一點:

grep -E '\<[0-9]{4}(-[0-9]{2}){2}\>'

相關內容