정규식은 여러 가지 맛으로 나옵니다. 당신이 보여주는 것은 Perl과 같은 정규 표현식 (PCRE, "Perl Compatible Regular Expression")입니다.
grep
POSIX 정규식을 수행합니다. 이들은 기본적인 정규 표현식 (BRE) 및 확장 정규식 (ERE, 경우 grep
함께 사용되는 -E
옵션). 시스템에 대한 매뉴얼 re_format
또는 regex
이와 유사한 매뉴얼 grep
또는 방금 링크 한 POSIX 표준 텍스트를 참조하십시오.
GNU grep
를 사용 grep
하는 경우 GNU grep
관련 -P
옵션 과 함께 사용하면 Perl과 같은 정규식을 사용할 수 있습니다.
또한 줄의 하위 문자열이 아닌 기본적으로 줄 을 grep
반환 합니다. 다시 한 번, GNU (및 다른 구현)에서는 옵션을 사용하여 각 행에서 주어진 표현식과 일치하는 비트 만 가져올 수 있습니다 .grep
grep
-o
모두 참고 -P
하고 -o
비표준 확장입니다 의 POSIX 사양grep
.
GNU를 사용하지 않는다면 대신 문자열 과 줄 끝 사이의 비트를 얻는 데 grep
사용할 수 있습니다 .sed
prefix
sed -n 's/.*prefix\(.*\)/\1/p' file
이 작업은 sed
주어진 대체를 적용 할 행만 인쇄하는 것입니다. 대체는 표현식 (BRE)과 일치하는 전체 행을 string 다음에 발생하는 부분으로 대체합니다 prefix
.
prefix
한 줄에 여러 인스턴스가 있는 경우 sed
변형은 마지막 문자열 뒤에 문자열을 반환 하고 GNU grep
변형은 첫 번째 문자열 뒤에 문자열을 반환합니다 (다른 인스턴스 포함 prefix
).
이 sed
솔루션은 모든 유닉스 계열 시스템에 이식 가능합니다.