POSIX 기본 및 확장 문법
패턴을 기술하기 위한 다양한 메타 문자들
- .: 뉴라인을 제외한 한 개의 문자와 일치함
- ?: 자신 앞에 나오는 정규 표현식이 없거나 하나가 일치하며, 대부분 한 개의 문자와 매칭할 때 사용함
- *: 바로 앞 문자열이나 정규 표현식에서 한번 이상 반복되는 문자
- +: 자신 앞에 나오는 하나 이상의 정규 표현식과 일치함. *과 비슷하게 동작하지만 반드시 하나 이상일 경우에만 일치함.
- {N}: 정확히 N번 일치함
- {N,M}: N번 또는 그 이상 일치함
- -: A부터 Z를 A-Z로 표현하듯, 알파벳이나 숫자의 범위를 나타낼 때 사용
- ^: 라인의 시작에서 공백 문자열을 의미함. 또한 목록의 범위에 없는 문자들을 의미함
- $: 라인 마지막에서 공백 문자열을 의미함
- ^$: 빈 줄과 일치함
- [...]: 대괄호는 단일 정규 표현식에서 문자들을 집합으로 묶어줌
- \: 특수 문자를 원래의 문자 의미대로 해석함
- \b: 단어 끝의 공백 문자열을 의미함
- \B: 라인 끝의 공백 문자열을 의미함
- \<: 단어 시작에서 공백 문자열을 의미함
- \>: 라인 끝에서 공백 문자열을 의미
POSIX 문자 클래스
찾고자 하는 문자열의 종류
- [:alnum:]: 알파벳이나 숫자로 이루어진 문자열. [A-Za-z0-9]와 같은 표현임
- [:alpha:]: 알파벳 문자를 의미하며 [A-Za-z]와 같은 표현임
- [:blank:]: 스페이스나 탭을 의미함
- [:cntrl:]: 제어 문자들을 의미함
- [:digit:]: 0~9 사이의 숫자를 의미함 [0-9]와 같은 표현임
- [:graph:]: 출력 가능한 그래픽 문자들로 ASCII 33~126 사이의 문자들과 일치함. 스페이스 및 제어 문자들을 제외한 [:print:]와 같음
- [:print:]: 출력 가능한 그래픽 문자들로 ASCII 32~126 사이의 문자들과 일치함. [:graph:]와 비슷하지만 스페이스 문자를 포함
- [:punct:]: 문장 부호 문자들을 의미함
- [:space:]: 뉴라인 줄바꿈, 스페이스, 탭과 같은 모든 공백 문자들을 의미함
- [:upper:]: 알파벳 대문자를 의미하며 [A-Z]와 같은 표현임
- [:lower:]: 알파벳 소문자를 의미하며 [a-z]와 같은 표현임
- [:xdgit:]: 16진수의 숫자와 문자를 의미하며 [0-9a-fA-F]와 같은 표현임
이 곳 글을 참고할 것 너무나 정리가 잘되어 있다.
'Linux & UNIX' 카테고리의 다른 글
awk 사용법 (0) | 2021.06.10 |
---|---|
배시에서 if문에 정규식과 캡처링그룹 사용하기 (0) | 2021.06.09 |
리눅스에서 .service 파일 생성시 주의 할 것 (0) | 2021.06.04 |
프롬프트명 일시변경 (0) | 2021.06.02 |
firewall-cmd 명령어로 centos7 방화벽 포트 열기 (0) | 2020.09.29 |
댓글