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