ตัวอย่างเช่นไม่พบไฟล์:
: > 12; basename $(find -E . -regex '^(.*)(\d{2})' -print 2>/dev/null)
แต่สิ่งนี้จะ:
basename $(find -E . -regex '^(.*)([0-9]{2})' -print 2>/dev/null)
ในเวลาเดียวกันตัวอย่างเช่น:
echo -e '12\nabc\n456' | grep -E -e '^(\d{3})'
ทำงานค่อนข้างดี regcomp()
แต่ดูเหมือนจะใช้เหมือนกัน
ฉันทำอะไรผิดและฉันจะแก้ไขได้อย่างไร
@ fd0 ความคิดเห็นที่ดีที่สุด!
—
Cave-canem
grep
ใช้ฐานรหัสไม่BSD
ตัวเลือกที่เป็นร็อกของและผมเชื่อว่าพิเศษให้กับ OS X ได้ใช้งานและและตัวละครคลาสไม่ถูกต้องGNU grep
-E
POSIX ERE and PCRE
find
BRE
ERE
\d