PCRE / 메모

PCRE

Perl Compatible Regular Expressions

시작과 끝

  • 패턴의 시작과 끝은 구분자로 구별하며, 같은 구분자를 써야 한다.
    예) /abc/, $abc$, |abc|
  • 구분자는 영문, 숫자, \를 제외한 모든 문자를 사용할 수 있다. 보통 /를 많이 사용하며, 패턴에 /를 찾아야 하는 경우 다른 구분자를 사용한다.

메타문자

  • \
    이스케이프 문자
  • ^
    문자열의 시작
    /^abc/ : abc로 시작하는 문자열.
  • $
    문자열의 끝
    /abc$/ : abc로 끝나는 문자열
  • .
    단일 문자
    /a.b/ : a와 b 사이에 문자 하나
  • |
    OR
  • [
    클래스의 시작
  • ]
    클래스의 끝
  • (
    서브 패턴의 시작
  • )
    서브 패턴의 끝
  • {
    수량자의 시작
  • }
    수량자의 끝
  • \b
    문자의 시작과 끝
  • \t
  • \r
    커서를 현재 줄 처음으로 이동
  • \n
    커서를 다음 줄로 이동

수량자

수량자 바로 앞의 문자가 몇 번 나와야 하는지 지정

  • ?
    0번이나 1번. {0,1}과 같다.
    /abc?/ : ab, abc와 매칭
  • *
    0번 이상. {0,}과 같다.
    /abc*/ : ab, abc, abcc 등과 매칭
  • +
    1번 이상. {1,}과 같다.
    /abc+/ : abc, abcc 등과 매칭
  • {n}
    n번만
    /abc{2}d/ : abccd와 매칭
  • {n, m}
    n번 이상 m번 이하
    /abc{2,3}d/ : abccd, abcccd와 매칭
  • {n,}
    n번 이상
    /abc{2,}d/ : abccd, abcccd, abcccd 등과 매칭

문자 클래스

\, |, ^, - 를 제외한 모든 문자는 리터럴로 취급. -가 클래스 마지막에 사용되는 경우에는 리터럴로 취급.

  • [0-9], \d
    임의의 10진수
  • [^0-9], \D
    10진수가 아닌 아닌 모든 문자
  • [\f\r\t\n\v], \s
    모든 공백 문자
  • [^\f\r\t\n\v], \S
    공백 문자가 아닌 모든 문자
  • [A-Za-z0-9], \w
    A-Z이거나 a-z 이거나 0-9에 해당하는 모든 문자
  • [^A-Za-z0-9], \W
    A-Z도 아니고 a-z도 아니고 0-9도 아닌 문자

 

같은 카테고리의 다른 글
미디어 인코더 / 동영상을 움직이는 GIF로 만드는 방법

미디어 인코더 / 동영상을 움직이는 GIF로 만드는 방법

동영상을 움직이는 GIF로 만드는 방법은 여러 가지가 있습니다. 그 중 하나는 Adobe Media Encoder를 사용하는 것입니다. Adobe Premiere를 설치하면 같이 설치되는 프로그램이고, Premiere 없이 단독으로 설치할 수도 있습니다. Adobe Media Encoder를 실행하고, 대기열의 + 아이콘을 클릭하여 변환할 동영상을 추가합니다. 출력물을 애니메이션 GIF로 설정하고 변환하면 잠시 후 GIF가 생성됩니다.

상법 / 회사(기업)의 종류와 특징

상법 / 회사(기업)의 종류와 특징

회사 제169조(회사의 의의) "회사"란 상행위나 그 밖의 영리를 목적으로 하여 설립한 법인을 말한다. 제170조(회사의 종류) 회사는 합명회사, 합자회사, 유한책임회사, 주식회사와 유한회사의 5종으로 한다. 합명회사 설립 2명 이상의 무한책임사원으로 구성된다. 무한책임사원은 재산(현금, 현물), 신용, 노무로 출자할 수 있다. 내부관계 정관 또는 상법에 다른 규정이 없으면 조합에 관한 민법의 규정을 준용한다. 지분을 타인에게 양도하기 위해서는 다른 사원의 동의가 필요하다. 정관에 다른 규정이 ...

평철 스테플러(플랫 스테플러)

평철 스테플러(플랫 스테플러)

스테플러를 자주 사용하는 편입니다. 여러 명에게 나누어줄 자료를 만들 일이 많거든요. 제본하는 게 깔끔하지만 양이 적고 그리 중요하지 않은 건 스테플러를 사용합니다. 그런데 일반 스테플러는 한가지 문제가 있습니다. 심이 둥그렇게 접혀서 쌓아둘 때 보기 싫고, 손톱 같은데 걸려서 다치기도 합니다. 그래서 평철 스테플러를 사용합니다. 플랫 스테플러라고도 하는데, 문구점에서도 잘 모르는 경우도 있더군요. 그 ...

경기도교육청 상용클라우드 계정 만들고 오피스365, 한컴오피스 2018 설치하는 방법

경기도교육청 상용클라우드 계정 만들고 오피스365, 한컴오피스 2018 설치하는 방법

아이가 학교에서 컴퓨터를 배웁니다. 프리젠테이션을 배웠는데 한쇼로 만듭니다. 그리고 과제가 나옵니다. 한쇼로 뭔가를 만들어오라고... 만약 집에 한쇼가 없다면 어떻게 할까요? 아이 과제를 위해 사야할까요? 다행히도 초중고 학생이라면 교육청에서 한컴오피스 사용권을 받을 수 있습니다. MS 오피스 사용권도 얻을 수 있구요. 다음은 교육청에서 MS 오피스, 한컴오피스 사용권을 얻는 방법입니다. 경기도교육청의 사례이고, 다른 지역 ...

네트워크 / 메모

네트워크 / 메모

네트워크 분류 크기에 따른 분류 LAN(Local Area Network) MAN (Metropolitan Area Network) WAN(Wide Area Network) 연결 형태에 따른 분류 Star : 중앙 장비에 모든 노드 연결 Mesh : 그물처럼 서로서로 연결 통신 방식에 따른 분류 Unicast : 특정 대상과 1:1 Multicast : 특정 다수와 1:N Broadcast : 같은 네트워크의 모든 대상 네트워크 모델 TCP/IP Model TCP/IP 4 Layer 1 Network Access Layer : Ethernet, PPP 2 ...

자전거 체인 오일의 종류 및 장단점

자전거 체인 오일의 종류 및 장단점

요즘 들어 자전거를 많이 탑니다. 좀 외진 곳으로 이사를 왔더니 차 타고 가기에도 애매하고, 걸어가기에도 애매한 곳이 많이 때문이죠. 제가 타는 자전거는 10년 전 쯤에 구입한 알톤 뉴 알로빅스 2.5입니다. 유사 MTB 자전거로 당시 인기가 많은 자전거였습니다. 지금은 판매하는 곳이 없는, 검색도 잘 되지 않는 구형 자전거지만, 타고 다니는 데 문제는 없습니다. 9년 가량은 거의 ...

큐브 / 뻑뻑하다면 기름(큐브 윤활유)을 칠해보세요.

큐브 / 뻑뻑하다면 기름(큐브 윤활유)을 칠해보세요.

아이에게 큐브를 사준 지 4개월쯤 되었습니다. 처음엔 어려워하고 지루해했습니다. 그런데, 어느 순간 설명서 없이도 척척 맞추기 시작하더니, 요즘엔 시간 단축에 재미를 느끼고 있습니다. 구입한 큐브는 루빅스 큐브입니다. 평이 좋고 나름 비싼(?) 큐브죠. 가격은 15,000원 정도... 그런데, 이 큐브가 많이 뻑뻑하답니다. 친구들 큐브를 해보니 아주 잘 돌아간다고 새로 하나 사달라고 하네요. 그래서 동네 문방구에서 큐브를 하나 샀습니다. 가격은 ...

하이패스 무단통과 했을 때 대처 방법

하이패스를 사용한지 일년 조금 넘었습니다. 3년 전 내비게이션 구입할 때 하이패스 단말기를 사은품으로 받았는데, 고속도로 이용이 잦아지면서 작년에 장착했죠. 하이패스 단말기를 달고 처음 하이패스 차로를 통과할 때, 제대로 통과할 수 있을지 떨렸던 기억이 나네요..^^ 그동안 고속도로를 이용하면서 하이패스 차로를 무단 통과했던 적이 두 번 있었습니다. 상황이 약간 다른데, 각 상황별로 대처하는 방법을 ...

서식 / 생활계획표 / 시계 모양

서식 / 생활계획표 / 시계 모양

원을 그리고 24등분 하여 하루를 나타낸 생활계획표이다. LaTeX으로 만들었고, 파일 형식은 PDF이다.. 정확히 24등분 해서 점을 찍었다는 것 외에는 특별할 것 없는 단순한 모양이다. 다운로드 : 생활계획표

Apache / 디렉토리 안에 있는 디렉토리 또는 파일 목록 출력하는 방법

Apache / 디렉토리 안에 있는 디렉토리 또는 파일 목록 출력하는 방법

URL이 정확히 입력되지 않은 경우 보통 다음처럼 Forbidden 에러가 납니다. 이 에러 대신 해당 디렉토리에 있는 파일과 하위 디렉토리 목록이 나오게 하고 싶다면, 설정에 다음 코드를 추가합니다. Options +Indexes