ฉันมีไฟล์ข้อความที่มีสิ่งที่ต้องการ:
12,34 EUR
5,67 EUR
...
มีช่องว่างหนึ่งช่องก่อน "EUR" และฉันไม่สนใจ 0, XX EUR
ฉันเหนื่อย:
grep '[1-9][0-9]*,[0-9]\{2\}\sEUR' => didn't match !
grep '[1-9][0-9]*,[0-9]\{2\} EUR' => worked !
grep '[1-9][0-9]*,[0-9]\{2\}\s*EUR' => worked !
grep '[1-9][0-9]*,[0-9]\{2\}\s[E]UR' => worked !
ใครสักคนที่สามารถอธิบายให้ฉัน pls ทำไมฉันไม่สามารถใช้\s
แต่\s*
และ\s[E]
จับคู่?
ระบบปฏิบัติการ: Ubuntu 10.04, grep v2.5
[:space:]
สำหรับอดีต ดังนี้cat file | grep "[[:space:]]"