대시가 포함된 여러 패턴 egrep

대시가 포함된 여러 패턴 egrep

나는 다음을 egrep '201411[08|09|10|11]-[117|111]-'과 일치시키려고 합니다.

20141108-111-xyz-abc
20141110-117-342-lala

그러나 어떤 이유로 두 번째 문자 클래스 패턴([117|111])이 작동하지 않습니다. 아무튼 일치합니다.

두 번째 캐릭터 클래스 모드에 어떤 문제가 있는지 아시나요?

답변1

문자 클래스와 하위 패턴을 혼합하고 있습니다. 여기에는 후자가 필요합니다.

grep -E '201411(08|09|10|11)-(117|111)-' file

[[:alpha:]]"문자 클래스"는 클래스(예: ) 또는 선택 항목( )의 모든 문자가 [01][8901]나타날 수 있음을 의미합니다.

"하위 패턴"(밴드 |)은 "으로 구분된 패턴 중 하나가 발생할 수 있음 |"을 의미합니다.

관련 정보