Successfully reported this slideshow.
Your SlideShare is downloading. ×

Regex & property sheet

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 33 Ad
Advertisement

More Related Content

Advertisement
Advertisement

Regex & property sheet

  1. 1. Regex & Property Sheet http://whiletrue0222.com/ @whiletrue0222 http://cafe.naver.com/architect1 아꿈사 2012. 09. 01 http://www.flickr.com/photos/jacqueline-w/2837089885/sizes/l/in/photostream/
  2. 2. 목록 • 정규표현식을 활용한 찾기 및 바꾸기 • Property Sheet를 활용하자.
  3. 3. 정규 표현식이란 http://ko.wikipedia.org/wiki/%EC%A0%95%EA%B7%9C%ED%91%9C%ED%98%84%EC%8B% 9D
  4. 4. Visual Studio에서 정규식 사용 기본적인 구문 몇 개만 나온다. 정규식을 쓰려면 체크
  5. 5. 어느 날 갑자기 팀장님이 부르신다.. 한글로 된 로그 전부 영어로 바꾸란다. 작성된 로그가 수천 개가 된다! 한글로 된 것을 언제 다 일일이 찾지?
  6. 6. 로그코드는 대략 이렇게.. WriteLog(“로그메시지”);
  7. 7. 코드 구문 분석 함수 이름 문자열 WriteLog(“로그메시지”);
  8. 8. 찾는 정규식 찾을 코드 WriteLog(“로그메시지”); WriteLog.*:Ha 찾는 정규식
  9. 9. 함수이름이 일치하고 WriteLog(“로그메시지”); WriteLog.*:Ha
  10. 10. 중간에 문자들이 있고 WriteLog(“로그메시지”); WriteLog.*:Ha 식 구문 구문 단일 문자 . 줄 바꿈 문자를 제외한 모든 단일 문자 0 이상 * 앞의 식을 0번 이상 찾습니다.
  11. 11. 한글이 있다. WriteLog(“로그메시지”); WriteLog.*:Ha 식 구문 구문 한글 :Ha 한글 및 조합 자모를 찾습니다.
  12. 12. Visual Studio에서 검색하면. 정규식에 일치하는 문자열들
  13. 13. 팀장님이 또 부르신다….. strcpy를 strncpy_s로 전부 바꾸거라.
  14. 14. 함수 차이점 strcpy( dest, src ); count 변수 추가 strncpy_s( dest, src, count ); 함수명이 다름
  15. 15. 정규식으로 찾기 함수이름을 찾고 strcpy( dest, src ); strcpy{.*}{)}
  16. 16. 기존 매개변수 찾고 strcpy( dest, src ); strcpy{.*}{)} {} - 태그식 뒤에서 설명합니다.
  17. 17. 닫기 괄호를 찾는다 strcpy( dest, src ); strcpy{.*}{)}
  18. 18. 바꾸기 함수 이름을 변경 strcpy( dest, src ); strcpy{.*}{)} strncpy_s1, _TRUNCATE2
  19. 19. 매개변수를 대입 strcpy( dest, src ); strcpy{.*}{)} strncpy_s1, _TRUNCATE2
  20. 20. Count 를 추가 strcpy( dest, src ); strcpy{.*}{)} strncpy_s1, _TRUNCATE2
  21. 21. 닫기 괄호를 대입 strcpy( dest, src ); strcpy{.*}{)} strncpy_s1, _TRUNCATE2
  22. 22. 결과
  23. 23. 주의 앞서 설명한 정규식은 단순하여 실제로 사용할 때는 여러 상황을 고려해서 식을 만들어야 한다.
  24. 24. 목록 • 정규표현식을 활용한 찾기 및 바꾸기 • 속성 시트(Property Sheet)를 활용하자.
  25. 25. 속성 시트 (Property Sheet) http://msdn.microsoft.com/ko-kr/library/a4xbdz1e(v=vs.100).aspx
  26. 26. 다수의 프로젝트를 각각 설정? 각각 설정하면 고생. 디렉터리 구조 변경되면 눈물. 실수 위험도 높다. 속성시트를 활용하자. Ogre 1.8 sample
  27. 27. 속성시트 적용 전 중복
  28. 28. 속성시트 적용 후 중복제거
  29. 29. _UNICODE 전처리기는 어디에 선언 되어있나?
  30. 30. _UNICODE 정의됨 C:Program Files (x86)MSBuildMicrosoft.Cppv4.0 (제 컴 기준)
  31. 31. 속성관리자 • 보기 -> 속성관리자 창에서 추가 가능 • 대부분의 프로젝트 설정을 상속시킬 수 있다.
  32. 32. 참고 • List of regular expression software – http://en.wikipedia.org/wiki/List_of_regular_ex pression_software • 정규식(Visual Studio) – http://msdn.microsoft.com/ko- kr/library/2k3te2cs(v=vs.100).aspx • 속성 시트(C++) – http://msdn.microsoft.com/ko- kr/library/a4xbdz1e(v=vs.100).aspx
  33. 33. 감사합니다.

×