PHP - 정규표현식 치환2 > PHP

무료강좌-디비라

PHP

PHP Web Programming 강의 리스트

※ 가장 하단이 첫강좌입니다

생활코딩 | PHP - 정규표현식 치환2

본문

※ 영상을 선명하게 보기 안내
  1. 유튜브 영상에서 오른쪽하단에 톱니바퀴를 클릭합니다.
  2. 팝업목록에서 "품질" 선택하세요.
  3. 원하는 해상도를 선택해주세요.
※ 모바일에서 Wifi가 아니라면 데이타가 소진될 수 있으니 주의바랍니다.
생활코딩님의 PHP강의 청각장애인을 위한 자막
15444116081593.jpg

 자 이번에 살펴볼 것은 우리가 이전 시간에 살펴본 예제가 거의 비슷한데요

차이가 있다면 네 보시는 것처럼 요 패턴 이라고 하는 것과 리플레이스먼트
라고 하는 것이 배열이 라고 하는 차이점을 갖고 있습니다
자 이렇게 배열을 패턴과 리플레이스먼트 로 전달하게 되면 여기에 있는 요
문자 있죠
요 문자를 변경할 때 자 여기에 있는 요 첫 번째 패턴은
퀵 이 줘 요 킥은 여긴 여기죠
여기 있는 비어 의 카운터 파트너가 돼서
여기 있는 퀵 2b 어로 베어 로 바뀌게 됩니다 페어로
자 그 다음에 마찬가지 원리로 요 패턴의 두번째로 전달된 요 패턴 패턴
2
여기 있는 요 문자열에서 이 브라운의 해당되기 때문에
요 두 번째 패턴의 카운트 파트너인 리플레이스먼트 에 두번째 패턴 인
블랙 2
여기 있는 브라운 대신에 블랙이 교체 되게 되죠
그 다음에 폭스 대신에 는 여기 있는 폭스 줘 요 폭스 대신에 슬로우가
교체되면서
복스 가 슬러 가 됩니다 그럼 여기잇는 결과는 어떻게 되냐면 더 페어 에
블랙 슬로 점프
오버 더 ag 도 그가 출력 될 겁니다
여러분들이 직접 한번 확인해 보세요 요렇게 해서 그 우리가 어떤 치환을
할 때 꼭 문자와 문자를 치아 나는 것이 아니라
보시는 것처럼 배열과 배열을 어 제공하는 걸 통해서 좀 더 다양한
방식으로 시원할 수 있다라는 것을 알 수가 있죠
자 또 다른 예제를 하나 살펴 볼게요 자 여긴 이유 예제는 음 지금까지
우리가 살펴보았던 것들을 종합한 이라고 할 수가 있는데요
자 우선 음 필에 그의
세 번째 인자는 서브 작태 줘
서브젝트 는 우리가 변경하려고 하는 문자열 2 바로 서브젝트 줘
여기 있는 요 문자열을 여기에 제가 주석으로 처리한 요 것으로 변경 하는
것이 이 예제 목표입니다
제 초 제 그리고 첫 번째 인자인 패턴의 값은
요렇게 뭐 영 일 자 두 개의 값을 가지고 있는 배열이 구요
자 두번째 인자인 리플레이스먼트 는 보시는 것처럼 1
두개의 값을 가지고 있는 역시나 배열입니다
예 그래서 여기에 있는 요 첫 번째 값은
여기에 있는 요 문자열 에서

요 조건을 만족하는 데이터를 찾아서 그 데이터를
애플 에이스의 첫 번째 등장하는
요 값으로 변경한다 라는 것이죠 그게 기본적인 동작 시나리오 에요
자 그러면 코드를 한번 분석해 봅시다 자 이렇게 보시면
자 첫 번째 패턴은 이렇게 되어 있습니다
19 아니면 20 둘 중의 하나를 서브 패턴으로 묶었습니다
자 그럼 여기잇는 요 문자열에서 19
아니면 20 에 해당되는 부분이 어디있나요
바로 요 거죠 요거는 1900년대 와 2000년대를 포괄 하기 위한
정규표현식 이겠죠
자 그래서 어
여기에 있는 요게 자 여기에 되는 거죠
그리고 얘는 첫 번째 서브
패턴이 됩니다 자 그 다음에
이거는 숫자 줘 두 자릿수 두 자리의 숫자를 사는건데
요게 요거 뒤에 붙어 있어야 되니까 바로 요것이 99 라는 값이
예 요 놈의
이렇게 되는 거죠 자 그다음에
- 거 같고 - 면이 겁니다 자 그 다음에 여기 있는 요것
숫자가 1 이상 ei 의 개수를 가져야 된다 라는 뜻이죠
요거는 요 것을 의미하는데 요렇게 지정하는 이유는
월은 1월부터 12월까지 있는데 10 11 12 월 은 2 자리이기
때문에
2 자리까지 포함하기 위해서 이렇게 해 준 거죠 자 그 다음에 여기
걸어오고 아닌 대쉬가 오고 대시가 이렇게 옵니다
자 그 다음에 마지막에 있는 요것은 예요 거죠
자 그 다음에 여기에 있는 요거 한번 살펴볼게요 제일 먼제 뭐가 나오나요
캐 러 쉬 나왔죠 캐러 슨 제일 처음 이란 뜻이죠
즉 요기에서 시작하는 겁니다 자 역시 레시 s 라고 하는 것은 공백 을
의미합니다
저건 스페이스 의 약자 에요 그리고 여기에
별표가 있다라는 것은 * 표는 없을 수도 있고 있을수도 있단 얘기죠
즉 공백이 여기에 공백이 있을 수도 있고 없을 수도 있다 라는 뜻이죠
지금 없으니까 어 요 조건을 충족하고 있는 겁니다
그럼 뒤에 것들을 뒤에 것들이 트라이 배 볼 수가 있게 되는 거죠 자
그다음에 중 가로가 나왔구요
그것은 여기 있는 요즘 가로 입니다 그리고 중 가루가 다 쳤죠 그것은
여기 있는 중괄호 인데 그 중 과로와 중괄호 사이에 이렇게 문자열 1
이상 문자 하나 이상 이라고 되어 있으니까 그게 바로 여기 있는 요
것이고
자 요것은 중 과로로 묶여 있기 때문에
요건 서브 패턴이 돼서
첫 번째 써 패턴이 되는 겁니다
자 그 다음에 다시 공백이 나왔고 그 공백이 1
있을 수도 있고 없을 수도 있다고 했는데 여기에 공백이 있네요
자 그러면 이 공백이 바로 여기에 해당 된다 라는 거죠
그 다음에 이 쿼리 나오고 이 쿼리 나오고
요거는 요 거죠 그리고
정규 표현식이 끝났습니다
그러면 여기까지 잉 거죠 자 그럼 여기잇는 요 것에 해당되는 이 구간이
어떻게 변경 되는가 라고 하는 것을 이제 살펴 볼 건데요
자 제가 이렇게 빨간색으로
이 각각의 요 데이터들이 어떤 서브 패턴의
어 써 패턴 상에서 몇 번째에 해당되는 가를 숫자를 이렇게 지정을 해
놨습니다
자 요거 요거 는 123 사고
요거는 또 일입니다 왜 숫자가 새로 시작 되냐면 여기 있는 스타트 데이트
라고 하는 것은 이 두 번째 패턴에 해당되는 거기 때문에 요 넘버링 은
새로 시작된다고 보시면 됩니다
자 그러면 2d 플레이스 를 살펴보면
리플레이 수에 있는 첫 번째 값인 요것 요 것과 여기에다가
여기에 있는 요 값을 대입해 보면 금방 옥합 결과는 우리가 예상할 수가
있습니다
자 그런데 한 가지 더 말씀 드릴 건 뭐냐면 음 자 이전 시간에 이전
동영상에서 우리가 떨 어 일이라고 하는 것이 첫 번째 등장하는 써 패턴에
해당되는 갑시다 라고 말씀드렸죠
요거는 이것과 똑같은 의미를 갖습니다
자 / 2 1
요 것과 이것은 같은 의미라고 생각하시면 됩니다
자 여기에 있는 요리 플레이스 먼트 를 보면 자 여기에
제일 먼저 3의 등장했습니다 3 요렇게 가 3의 줘 그러면 3회 값은
현재 뭐예요
오잖아요 꼬가 봤구요
그 다음에 / 가 등장했어요 그러면 어디에 슬래시 를 붙이고 그 다음에
4 가 왔죠 써 패턴사 그러면 27일이 줘
17이 오고요 그 다음에 다시 슬래시 같습니까
슬래시 를 적고 그리고 일이니까
요 갑 19 를
요렇게 졌구요 그 다음에는 / 없이 이번이 왔으니까 99를
요렇게
적어줍니다 그래서 제가 지금 이렇게 위추 친 것이 바로 여기에 해당 되는
거죠 자 그다음에 앞에 있는 요부분
여기 있는 요 부분은 어떻게 변경 되는지를 제가 써보면
자 우선 음
자 여기는 여러분들이 헷갈리지만 되는 것이 여기는 패턴이 아닙니다 여긴
정규 표현식에 문법이 들어오는 것이 아니에요
그래서 여기 있네요 달라는 그냥 일반적인 문자로 해석이 됩니다
자 달러 가 일단 들어오고요 그리고 어
역 / 일이라고 하는 것은 첫 번째 서브 패턴의 값이 이기 때문에 바로
요놈이 줘
예 그리고 요 놈의 값은 실제로 되어있다는 스타트 데이 뜨기 때문에
5
달러 스타트
데이트 라고 하는 값이 들어오고요
그리고 띄우고 띠우고 이퀄 해서
여기에는 요 것과 여기에는 요것을 결합한 것이 지금 줄바꿈이 나 좀
안타깝네요
결합한 것이 결과가 된다는 거죠 그게 바로 이겁니다
한번 진짜로 그런지 한번 출력을 해보죠
킬 번을 입력해 발 8번의 입력해 보니까 보시는 것처럼 이런 결과가
나왔죠
예 기 전에 우리의
그런 식은 요 거였는데
요 거였는데 요렇게 초 안돼서
데이터가 변경된 것을 볼 수가 있습니다
이렇게 해서 제가 준비한 정규 표현식에 대한 수업에
어 수업은 여기까지 이구요 이번 수업을 만들기 위해서 저도 공부를 좀
많이 했습니다
그래서 여기 정규 표현식에 패턴들 요 것 같은 경우는 원래 없었던 모듈이
인데 이 수업의 선행학습으로 정규표현식을 그 토픽 안에서
다루려고 하니까 너무 분량이 많아져서 별도의 제가
모듈을 만들어서 그 모듈의 다가
정규표현식 패턴 들에 대한 수업을 따로 정리를 하게 됐습니다 그래서 여기
있는 정규 표현식 이라고 하는 요 부분은 요걸로 끝나는 것이 아니라 이제
요것도 이제 본격적인 수업으로 나갈 거니까요
나중에 여러분들이 정규 표현식에 대한 수업을 듣고 있을 지음 해서는
여기 있는 커리큘럼이 더 풍부 에 지기를 저도 기대를 하겠습니다 자 긴
시간동안 이 정규 표현식 이라는 정말 새로운 그리고 또 어떻게 보면
복잡하고 머리아픈
요 것을 익히는 약 5 예 고생 많이 하셨습니다

댓글 0개

등록된 댓글이 없습니다.

 
Total 93건 1 페이지
썸네일
제목

Menu