정규 표현식

정규표현식 패턴들

본 수업은 zvon의 정규표현식 tutorials를 이용한다. 실제 강의는 동영상을 참고하자.

zvon은 아래의 URL을 통해서 접근 할 수 있다.

http://zvon.org/comp/r/tut-Regexp.html#Pages~Contents

아래는 인터렉티브하게 정규 표현식을 공부 할 수 있는 사이트

http://regexone.com/

댓글

댓글 본문
  1. 시더
    정규표현식 제대로 알기 위해 수강시작...
  2. ggyuker
    22.01.04 수강완료
  3. 금도끼은도끼
    가끔식 찾아보게 되네요..
  4. 이마누
    완료
  5. jeisyoon
    2021.07.29 Pattern of Regular Expressions - OK
  6. 코딩하자파이팅
    감사합니다. 헷갈리는 개념이었는데 twinbraid님 덕분에 단번에 이해됐어요!!
    대화보기
    • hanel_
      21.4.1 감사합니다
    • rnthd2
      너무 잘듣고 있습니다!
      이렇게 깔끔한 정리는 정말 어디에도 없습니다 ㅠ.ㅠ!

      다만, 정규표현식의 패턴들(18~24) 경계 3분23초에서
      Case5와 Case2의 결과가 같은 것이 아니라
      Case5와 Case1의 결과가 같은 것이 아닌가요?

      Case5와 Case2의 First match 결과도 다르게 나옵니다
      확인부탁드려요 :D
    • 주니어개발자
      정말 명쾌하게 이해가 됐습니다 감사합니다! ㅋㅋㅋ
      대화보기
      • qwerasdf
        정규표현식 수량자부터 필요할때 다시 보기
      • 김희분
        끝 부분이 잘 이해가 안되긴 하는데,(\w+(?=\w))
        좀 더 찾아보도록 하겠습니다. 감사합니다.
      • bomnie
        ^(caret): 문자열의 시작 / [] 안에서 사용되면 not의 의미
        $: 문자열의 끝
        \: 이스케이프 문자
        .(point): 어떠한 문자, 공백, 특수문자 상관없이 모든 것을 가리킴 (와일드 카드와 비슷)
        []: []안의 문자와 통틀어 1 문자로 인식됨 / []안의 문자에 해당되는 어떠한 문자든 찾아냄
        -: range
        (|): 서브패턴 / 쉽게 말해 or 연산자와 비슷
      • 2019-10-20 6:51pm 완료
      • 가재준
        완료
      • 지나가는人
        뭔말인고 했는데, twinbraid님 설명을 들으니 속이 시원합니다. 감사합니다.
        대화보기
        • 김계승
          아 왜 게으르고 탐욕적인지 이해가 비유가 좋군요
          대화보기
          • regex
            사랑해요.
          • choon
            감사합니다.
          • 김나경
            12/18 수량자
          • ㅁㄴㅇㄹ
            대화보기
            • 김선민
              6까지 봤음! 10까지 봤음!
            • twinbraid
              역시 최고! 딱 한가지 게으른 수량자, 탐욕적 수량자에 대해서 보충하자면

              게으른 수량자는 게을러서 조건이 만족되는 것을 찾으면 딱 멈추고 퇴근해버립니다
              반대로 탐욕적 수량자는 탐욕스러워서 조건이 만족되더라도 그에 멈추지 않고 계속 탐색합니다.

              ------------------------------------------------
              <게을러요> 나는야 정말루 <탐욕스러워요>
              ------------------------------------------------

              그래서 위의 소스에서 괄호 안에 것만 각각 '게을러요' '탐욕스러워요'를 뽑아내고 싶다고 할때
              탐욕자를 쓰면
              <.*>
              <괄호찾고.. '게을러요' 찾고.. 다시 닫히는 괄호> 찾아서 조건을 만족해도 탐욕스럽게 끝까지 검색합니다
              그리고 원하는 > 닫히는 괄호하나를 끝내 더 찾아버리죠
              그 결과 위의 문장이 전부 선택되어 버립니다. 그럼 안되죠. 괄호 안에 것들만 각각 뽑고 싶었는데..

              그래서 쓰는게 게으른 수량자입니다
              <.*?>
              요렇게 해버리면
              첫번째 닫히는 괄호를 찾아서 조건이 만족되었다 싶으면 수량자가 '아싸!' 하며 퇴근해버립니다. 이렇게 되면
              first 매치라면 첫번째 괄호안의 것만 선택되고 all 매치일땐 다음 게으른 수량자가 출동후 조건찾아서 퇴근
              그렇게 반복해서 결국
              '게을러요' '탐욕스러워요' 요 두개만 똭 뽑아내게 됩니다.

              탐욕 수량자가 먼저 배우고 쉬워서 더 자주쓰지만 웹 같이 < > 열고 닫는 형태가 여러개가 있는 경우
              탐욕은 예상치 못한 결과를 내는 수가 왕왕 있죠. <a 로 시작해서 /a> 로 끝나는거 찾으면 웹 페이지 왕창선택!!@_@
              그래서 좀더 한정되고 정확한 결과를 위해선 게으른 수량자가 짱 편합니다
            • 텅 빈 충만
              강의 잘 보았습니다. 너무나도 유익했습니다. 감사합니다.
            • user1jena
              매번 정규표현식 패턴 만들 때마다 어려웠었는데 이제야 정리가 좀 되네요! 고맙습니다!
            • Dennis
              Complete!
            • 정지호
              정규식 복잡해보여서 손 놓고만 있었는데 다 봤더니 좀 정리되는 느낌이네요 ㅎㅎ
            • 쿠반
              휴 정규표현식 드디어 다들었네요 감사합니다!
            • 시밍
              24까지 수강완료 마지막 동영상은 PHP를 완강하고 다시 들으러 오겠습니다 감사합니다!@@
            • 박재현
              7-9까지 수강완료. 17/12/15
            • 박인호
              12-13
              수강완료.
              감사합니다.
            • 푸른하늘
              8
            • 쿠반
              강의 내용중 헷갈리는 부분이 있었는데 감사합니다^^
              대화보기
              • 존버의길
                a가 0이상 반복되는 문자이니 a가 반복되다가 b를 만나서 종료 됩니다.
                대화보기
                • Aris Kim
                  저 아래 sghy님의 댓글에 답글을 다려했는데 자꾸 댓글 올라가네요...
                  그래서 그냥 댓글로 답니다. 19페이지 문제 관련 팁입니다.

                  [Solved] 19 페이지 Case 1과 Case 3 결과가 다른 이유는...
                  \W와 [^A-z0-9_]가 완전히 같진 않기 때문입니다.
                  착각하기 쉬운데

                  A는 아스키코드 값이 10진수로 65, Z는 90, a는 97이거든요. 그래서 Z와 a 사이에 ^을 포함하여 특수문자 6개가 숨어 있어요. 그러니까 Case 3에서는 빠지게 된 것입니다.
                  대화보기
                  • 오빠는다르다
                    감사합니다~!!!!
                  • 송성태
                    정규 표현식 다 봤습니다.
                    실제로 어떻게 쓰이는지 몰라서 어렵네요. ㅠㅠ.
                    아무튼 잘 봤습니다!
                  • meek
                    약간 햇갈리는것도 있네요.
                    17-07-18 감사합니다~
                  • 브라운그린
                    http://regexr.com/ 에서 따라해보고 있는데 zvon.org의 match 결과와 다르게 나오는 case가 있습니다.
                    Page18 Case2 \w*와 Page24 Case1 \A... 인데, 왜 다르게 나오는걸까요?
                    -----------------------------------------------
                    Page24 Case1는 Source를 복사해서 붙여넣을때 앞쪽에 공백에 생겨서 match 결과가 다르게 나왔던거였네요 ㅎ.
                  • 강지후
                    구경하려고 왔는데 동영상 개수가 ㄷㄷ
                  • treehouse
                    정규표현식이 php공부보다 더어렵네
                    호우 마이 갓
                  • <개인질문>
                    Source : aabc abc bc Regular Expression:a*일 경우
                    왜 첫번째 문자열인 aa만 체크되는 건가요?
                    뒤에 abc 중 a도 체크가 되어야 하는게 아닌가요??
                  • 김세창
                    고맙습니다..ㅠㅠ
                    어렵군요 ㅎㅎ
                  • parkhoonil
                    아래는 인터렉티브하게 정규 표현식을 공부 할 수 있는 사이트가

                    http://regexr.com/v1/

                    로 바뀌었네요..
                  • shlee
                    2017.04.17 완료
                    감사합니다~ 잘봤습니다^^
                  • ㅠㅠ
                    정말너무너무감사합니다!!!!!!!!!!!!1
                  • neobay
                    쉽게 설명해주셔서 이해 잘됬습니다. 감사합니다.
                    마지막 영상에서 page26에 대한 설명이 없는데 짤린 듯 합니다.
                    항상 감사합니다~~
                  • NamJin Kim
                    thank you
                  • wlsl
                    유용한 정보 감사합니다!
                    정규 표현식 패턴들18~24) 경계 동영상에서 gskinner.com 홈페이지 화면이 작게 나와서 잘 안보이는게 좀 아쉽습니다
                  • 토프만
                    우연히 검색으로 정말 유익한 공부가 되는것같습니다. 차근차근 이해하며 공부중인데 왠지 암호학 공부를 하는듯한 느낌이네요. 너무 재미있는 php의 세계인것같습니다.
                  • 살충제
                    수업 자체도 상당히 도움이 되지만, 여러 유용한 사이트도 많이 알려주셔서 하나하나 잘 모아두고 있습니다. 감사합니다.
                  버전 관리
                  egoing
                  현재 버전
                  선택 버전
                  graphittie 자세히 보기